一般是宏没找到定义展开,造成了被当成了标识符,而C++不像C允许不指定类型,默认为int,于是就得到了上述报错。
通常在mmsystem.h之前先包含Windows.h可以解决问题。
比如你自己编译如下简单的代码:
#include // 尝试注释掉这行,你就可以看到相似的报错一大堆 #include int main(){}