我正在Windows 10上使用VS2017。我有一个使用Messaging控制台应用程序的FSM,但是该应用程序具有几个Windows库(windows.h
和winmm.lib
)和一个非标准C ++库(conio.h
)。我想删除和/或替换这些库,以便能够将C ++代码移植到OSX。我将根据需要删除和/或替换/适应任何当前功能。
但是,在继续操作之后,我遇到许多无法解释的编译器错误。我搜索了许多小时,但找不到任何有用的参考,因此需要一些帮助来弄清这些参考。
从特定的实用程序头文件(#include windows.h
)中删除ConsoleUtils.h
并删除其使用windows.h
的函数之一以及对该函数的所有调用后,得到了以下编译器错误:
MessageDispatcher类没有成员DispatchMessageW
好吧,MessageDispatcher
具有函数DispatchMessage()
(末尾没有'W')。我对此感到非常困惑。如果将鼠标指针悬停在MessageDispatcher::DispatchMessage
定义中的红色卷曲线上,则会显示一个弹出窗口
“#define DispatchMessage DispatchMessageW扩展为DispatchMessageW”
但是,我的代码中任何地方都没有这样的#define
!我什至在整个解决方案中都对“ DispatchMessageW”进行了文本搜索,并且此文本没有实例。
此外,在DispatchMessage()
函数中,两个私有成员是不可访问的(Discharge()
和PriorityQ
),这两个私有成员均已正确声明和定义,并且没有引用{{1} }。
windows.h
的类中,我得到与上述'1'相同的错误。如果我重新添加MessageDispatcher::DispatchMessage()
,所有错误都会消失,并且项目可以毫无问题地构建和运行。
是什么原因导致这些错误,我该如何解决?
答案 0 :(得分:0)
在定义s=df['_time'].dt.strftime('%Y-%w').groupby(df['key']).nunique()
nweek=df['_time'].dt.strftime('%Y-%w').nunique()
s[s==nweek]
key
mike 4
Name: _time, dtype: int64
类之后和使用它之前的某个地方,包含MessageDispatcher
或某些其他Windows标头的内容导致<windows.h>
宏被定义。