error c2146 头文件

本文介绍了在C++编程中遇到的errorC2146和errorC2501的问题及解决方法。通过调整头文件之间的相互引用,并在相关头文件中声明类,成功解决了编译错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遇到错误error C2146。
转自http://blog.sina.com.cn/s/blog_52dcf4f901009b3x.html?retcode=0

今天下午编辑一个C++程序,碰到了这两个错误。

error C2146: syntax error : missing ';' before identifier 'm_listenSockets'
    error C2501: 'CListenSocket' : missing storage-class or type specifiers
    error C2501: 'm_listenSockets' : missing storage-class or type specifiers

上网查了一下这两个错误,发现很多人都遇到过这样的问题,但是没有一个合适的方法来解决。下午借鉴了别人的一些方法,同时自己也“胡乱捣腾”了一阵,问题算是解决了。

首先,找到两个头文件:一个是发生上述两个错误的头文件,在我自己的工程是MyQQServerDlg.h,另一个是定义了CListenSocket类的头文件:ListenSockt.h。

查看这个两个头文件有没有互相引用,换句话说,就是查看在MyQQServerDlg.h里有没有这样一句话,#include "ListenSockt.h",同理,也要查看ListenSockt.h里有没有#include "MyQQServerDlg.h",。要是有的话,先注释掉#include "MyQQServerDlg.h"。

而后在ListenSockt.h里面写入class MyQQServerDlg;问题就解决了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值