8得票6回答
在C++中查看视图编译器的名称混淆

我该如何查看C++中重载函数的编译器生成的名称?我正在使用VC9,但其他编译器的答案也可以。 编辑:我发现这里所有的答案都很有用。接受我最喜欢的那一个。

8得票5回答
使用不同编译器版本的C++ DLLs

这个问题涉及到《如何在不同的VS版本间制作一致的dll二进制文件?》 。 我们有一些用VC6编译的应用程序和DLL库,还有一个用VC9编译的新应用程序。VC9应用程序必须使用用VC6编译的DLL库,其中大部分是用C语言编写的,还有一个是用C++编写的。 C++库由于名称装饰/修饰问题而存在...

8得票1回答
C++03下的引用折叠

我需要从绑定成员函数创建谓词,因此我将其包装在一个boost::function<bool(SomeObject const &)>中。这似乎很好,但在某些情况下我还需要对其进行取反。然而 boost::function<bool(SomeObject const ...

8得票1回答
如何在Windows中创建任务栏(系统托盘)应用程序

我所知道的启动Windows应用程序的唯一方法是通过CreateWindow。不幸的是,没有一个窗口样式适用于任务栏应用程序,我想知道如何制作这样的应用程序。我在C#中找到了这个解释,但我正在寻找能够使用VC++ 2008编译的解决方案。有什么解决方案吗?

7得票3回答
基于ATL的链接器错误

我最近遇到了一个与atls.lib相关的链接问题。我使用以下代码更新我的链接器附加依赖项行: comctl32.lib C:\WinDDK\7600.16385.1\lib\ATL\i386\atls.lib C:\WinDDK\7600.16385.1\lib\ATL\i386\atl.l...

7得票3回答
在std::string构造函数中,迭代器列表已损坏

下面的代码在VS2005 SP1的Debug配置下编译,会显示两个带有“ITERATOR LIST CORRUPTED”的通知消息。 代码片段: #define _SECURE_SCL 0 #define _HAS_ITERATOR_DEBUGGING 0 #include <ss...

7得票4回答
构造函数结束括号处存在无法访问的代码

我正在处理一款使用VC9构建的应用程序,遇到了一个我不太理解的警告:为什么在构造函数的结束括号处会出现“无法访问的代码”警告? 最小化的测试用例如下: __declspec(noreturn) void foo() { // Do something, then terminate t...

7得票1回答
如何返回一个不透明句柄(void*或dword),可以将其强制转换回存储在boost::interprocess映射中的值元素?

我对堆和按值与按引用语义感到有些困惑,这涉及将std::string键和大型struct值放入像boost::interprocess::map这样的容器中。 这是我的情况和我正在使用的一些typedef: typedef std::string AreaKeyType; ...