voi*_*ter 1 c++ windows winapi
我在这里绝对疯了.我正在Windows上进行一些C++开发,我有一个名为'interface'的命名空间:
namespace gd {
namespace interface {
}} // end namespace
Run Code Online (Sandbox Code Playgroud)
但是,无论是否包含"Windows.h"或"Wtypes.h"(包含名为"interface"的宏),都会包含一个名为"objbase.h"的文件.这个宏不允许我使用命名空间名称.Win32 API中是否有一项功能可以禁用接口宏的定义?如果没有,有人可以想到一个聪明的解决方法来禁用它,而不需要在我的代码库中进行太多的大规模更改吗?
如果你真的想这样做,你可以#undef使用interface宏.
我建议,而不是命名你的命名空间interface,因为interface你可以得到一个保留字,而不是实际上是一个保留字.使用该命名空间会引起很大的困惑.
| 归档时间: |
|
| 查看次数: |
606 次 |
| 最近记录: |