无法命名我的函数CreateWindow

时间:2013-05-05 00:44:03

标签: c++ winapi

我无法创建自己的名为CreateWindow的函数,因为已经在win32标头中定义了一个函数。只是我甚至不能在我自己的命名空间中这样做。 真的是什么问题?

MyNamespace::MyOwnWindowClass * Bit::CreateWindow( )
{
// Code here.
}

获取错误,例如:

Error   5   error C2447: '{' : missing function header (old-style formal list?)
Error   2   error C2039: 'CreateWindowExW' : is not a member of 'MyNamespace'

1 个答案:

答案 0 :(得分:5)

问题是MS使用了#define(我相信根据你是为窄字符串还是宽字符串构建来映射函数)。你有三个选择。首先,不要在必须包含相关MS头的文件中使用CreateWindow。或者,在使用您的函数之前,您可以#undef它(我不建议这样做)。最后,你可以重命名你的。