vs2010编译C代码的奇怪问题 error C2039: 不是成员
一头文件有如下定义:
typedef struct INITIALIZE_ARGS {
CREATEMUTEX CreateMutex;
DESTROYMUTEX DestroyMutex;
LOCKMUTEX LockMutex;
UNLOCKMUTEX UnlockMutex;
} INITIALIZE_ARGS;
typedef INITIALIZE_ARGS * INITIALIZE_ARGS_PTR;
另一C文件
void init_lock(INITIALIZE_ARGS_PTR args)
{
...
if (args->CreateMutex && args->DestroyMutex && args->LockMutex && args->UnlockMutex)
{
...
}
...}
在vs2010编译的时候遇到如下错误:
error C2039: “CreateMutexA”: 不是“CK_C_INITIALIZE_ARGS”的成员
我代码写的是CreateMutex,为什么编译报错说用到了成员CreateMutexA哪?同一行代码用到的另外两个结构的成员没有报错。
我把CreateMutex检查放到这一行的最后,结果还是一样。
求大神指教这个问题怎么解决
跪谢