error C2143编译错误
但是,我在官网的例子上没有找到我所遇见的问题!
在此记录一下,问题代码如下:
1 class testA1; 2 class workclass 3 { 4 public: 5 explicit workclass(); 6 virtual ~workclass(); 7 private: 8 int M_INT; 9 testA* ptmp; 10 }
单独看这一块,一眼就能看出问题是没有声明改变量testA。这样编译时会报错,但是报错的内容是这样的\
error C2143: 语法错误: 缺少“;”(在“*”的前面)。在代码较多的情况下,就变得难以查找问题所在。明明有些";",这个符号。
解决方案:
testA在使用时没有包含头文件的情况下进行类的声明即可。
正确代码示例
1 class testA; 2 class testA1; 3 class workclass 4 { 5 public: 6 explicit workclass(); 7 virtual ~workclass(); 8 private: 9 int M_INT; 10 testA* ptmp; 11 }
标签:workclass,语法错误,C2143,C++,testA,error,class From: https://www.cnblogs.com/ybqjymy/p/18073779