C++抛出异常错误

GK_2014 2015-04-08 04:18:02
编译器提示:error C2700: 'class GPError' : cannot be thrown (use -W4 for more in)
简单描述下我的问题,还请各位大牛帮忙看看。
由于想做一个动态库,所以类的前面加了AFX_EXT_CLASS 。
我定义了一个GPError'类,用来处理异常,由于代码有点多,所以省略了一些代码,只贴部分关键部分,见谅。
class AFX_EXT_CLASS GPError : public CException  
{
DECLARE_SERIAL(GPError)
public:
GPError(LPCTSTR lpszClassName=NULL,
ERRORCODE nError=USER_DEFINED,
Number nReason=0,
LPCTSTR lpszMessage=NULL);
protected:
CHAR * className; ///< 错误来源类名
const ERRORCODE error; ///< 错误类型
CHAR * message; ///< 错误信息描述
CHAR * name; ///< GPError异常标识
const Number reason; ///< 错误原因
};


然后我定义了另外一个类,其中这个成员函数用来抛出异常,部分代码已省略
class AFX_EXT_CLASS KeyHost_0902 : public KeyHostInterface
{
public:
void ThrowError(LPCTSTR lpszClassName, GPError::ERRORCODE nError, Number nReason, LPCTSTR lpszMessage);


这个成员函数的实现部分如下:
void KeyHost_0902::ThrowError(LPCTSTR lpszClassName, 
GPError::ERRORCODE nError,
Number nReason,
LPCTSTR lpszMessage)
{
throw GPError(lpszClassName, nError, nReason, lpszMessage);
}


运行之后就报上述错误,是我的GPError 类有问题吗?
...全文
176 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
GK_2014 2015-04-08
  • 打赏
  • 举报
回复
引用 3 楼 zhao4zhong1 的回复:
VC6: 工程、设置、C/C++、分类:General、警告级别:Level 4 工程、设置、C/C++、分类:C++ Language、允许异常处理 确定 编译、重建全部。
引用 3 楼 zhao4zhong1 的回复:
VC6: 工程、设置、C/C++、分类:General、警告级别:Level 4 工程、设置、C/C++、分类:C++ Language、允许异常处理 确定 编译、重建全部。
谢谢回答,还是会报那个错误,也多了些警告。
赵4老师 2015-04-08
  • 打赏
  • 举报
回复
VC6: 工程、设置、C/C++、分类:General、警告级别:Level 4 工程、设置、C/C++、分类:C++ Language、允许异常处理 确定 编译、重建全部。
GK_2014 2015-04-08
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
(use -W4 for more in) 项目、属性、C/C++、常规、警告等级:Level4 (/W4) 项目、属性、C/C++、代码生成、启用C++异常:是 重建所有
不好意思,忘记说明了我的编译器是VC 6.0
赵4老师 2015-04-08
  • 打赏
  • 举报
回复
(use -W4 for more in) 项目、属性、C/C++、常规、警告等级:Level4 (/W4) 项目、属性、C/C++、代码生成、启用C++异常:是 重建所有

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧