小编Mot*_*tti的帖子

尝试/最终忽略异常吗?

我有一种情况,我希望无论发生什么事情都要执行某些代码,但我需要将异常传递到堆栈中以便稍后处理.以下是:


try
{
  // code
}
finally
{
  // code that must run
}
Run Code Online (Sandbox Code Playgroud)

只是忽略任何异常,还是会将它们传递给它们?我的测试似乎表明他们仍然被传递,但我想确定我不是疯了.

编辑:我的问题不是关于何时以及最终是否会执行,而是关于异常是否仍然被抛出,但现在已经得到了回答.

exception-handling exception finally

10
推荐指数
2
解决办法
3876
查看次数

什么语言的日期,时间和日历操作真的很好?

这可能是一个问题太多了,但有没有任何语言可以表达时间和日期操作的非常好的工作?我马上就会批准写一个真正伟大的时间库真的很难.那就是说,有没有广泛的语言有一个?基本上,我想要像现代正则表达式库那样全面地处理时间和日期.到目前为止,我在Python和Java中看到的所有内容都省略了一个或多个非常重要的部分,或者使得太多的事情变得困难.

至少这应该是直观的:

  • 查找两个给定日期之间的天数,两个给定分钟周期之间的分钟数等.
  • 从时间戳添加和减去间隔
  • 允许在时区之间进行简单转换,并按区域自动更改夏令时更改(假设有可用的区域设置的准确支持数据库)
  • 获得给定时间戳落入的时间段,给定时间段粒度("这个日期是哪个日历日?")
  • 支持非常通用的字符串到目前的转换(给定模式)

此外,如果有一个Java风格的Calendar/GregorianCalendar设置,如果我需要滚动自己的希伯来语,巴比伦语,Tolkien或MartianCalendar,一般的Calendar类应该适应子类.(例如,Java Calendars使这一点变得毫无意义.)

我在这里完全与语言无关.如果事情在计算模糊的东西,比如"2002年和下一个情人节之间有多少分钟?",那就没关系了.

time datetime language-features date

9
推荐指数
3
解决办法
1185
查看次数

空BSTR和NULL BSTR之间应该有区别吗?

在维护COM接口时应该BSTR像对待空方式一样对待NULL?换句话说,这两个函数调用应该产生相同的结果吗?

 // Empty BSTR
 CComBSTR empty(L""); // Or SysAllocString(L"")
 someObj->Foo(empty);

 // NULL BSTR
 someObj->Foo(NULL);     
Run Code Online (Sandbox Code Playgroud)

string com bstr

9
推荐指数
2
解决办法
7782
查看次数

双值返回0

这是一个例子:

Double d = (1/3);
System.out.println(d);
Run Code Online (Sandbox Code Playgroud)

这将返回0,而不是0.33333 ......应该如此.

有人知道吗?

java division

9
推荐指数
2
解决办法
2万
查看次数

我可以将参数传递给客户端HTML页面吗?

我不确定我是否有行话来问这个问题不是网络开发者,但请耐心等待我.

我想将参数发送到客户端HTML页面(只是磁盘上没有涉及Web服务器的文件).我最初的尝试是使用查询字符串,然后解析它,window.location.href但不是传递给页面的查询字符串,我得到一个文件未找到错误.

有可能做我正在尝试的事情吗?

html javascript parameters client-side query-string

9
推荐指数
1
解决办法
1万
查看次数

为什么C++ 0x中有sizeof ...运算符?

我看到@GMan实现sizeof...可变参数模板的一个版本(据我所知)相当于内置的sizeof....这不符合第二个设计原则:更喜欢库到语言扩展吗?

c++ language-design c++11

9
推荐指数
1
解决办法
571
查看次数

迁移到VS10时的体验是什么?

我们正在考虑将一个非常大的产品升级到VS10.

我听说过很多关于VS10的好东西,我对新的C++ 0x功能感到非常兴奋,但是在玩VS10的时候我有一个案例,其中一个样本玩具应用程序崩溃了(它在VS8中没有)在一些C++ 0x功能中似乎存在编译器错误的情况.

在另一种情况下,我看到在VS9中不会unorderd_map抛出bad_alloc异常.

我们的产品由原生C++和.NET组成,并且有数百万行代码.有没有人有过将类似项目迁移到VS10的经验?这个过程是痛苦的吗?此举是否有任何回归?

我正在寻找更多的轶事证据,因为我在网上找到的所有评论都很好,并且与我的经验不符.

.net c++ migration upgrade visual-studio-2010

9
推荐指数
1
解决办法
1355
查看次数

dynamic_cast <>的速度有多快

...大致相比典型std::string::operator==()?我在下面提供一些更多细节,我不确定它们是否具有任何相关性.复杂性或近似性的答案足够好.谢谢!

详细信息:我将在列表中的for循环中使用它来查找某些特定实例.我估计我的平均继承级别为3.5级.我正在寻找的那个有一个父类,一个祖父母和两个"接口"之上,即用几个抽象类virtual void abc() = 0;.

我正在寻找的那个没有子类.

c++ performance dynamic-cast stdstring

9
推荐指数
2
解决办法
5856
查看次数

将几个本机DLL合并到一个DLL中

我有很多小的DLL,我想把它变成一个大的(呃)DLL(如这里建议的).我可以通过合并我的项目来实现这一目标,但我想要一种不那么具有侵入性的方式.

几个DLL可以合并成一个单元吗?

快速搜索发现这个线程声称这是不可能的.有没有人知道呢?

请注意,我说的是本机C++代码而不是.NET,所以ILMerge已经出来了.

dll merge unmanaged

8
推荐指数
1
解决办法
1万
查看次数

我可以监控线程消息队列的大小吗?

我们的应用程序从DCOM(0x80010100)获取系统调用失败的RPC错误,我们怀疑目标线程的消息队列已满(尽管我不相信这是真的).我知道队列仅限于10,000消息,我想知道在常见情况下我们是否接近这个数字.有没有办法监控线程的消息队列的大小?

我找到的最有希望的选项是,GetQueueStatus但这不包括队列中只有其类型的消息数.

winapi multithreading message-queue

8
推荐指数
1
解决办法
1701
查看次数