小编Com*_*ost的帖子

从C++中定义的异常返回整数

我想定义一个返回int的异常.我的代码如下.它显示错误.

class BadLengthException : public exception {
    public:
        int x;

    BadLengthException(int n){
        x =n;
    }

    virtual const int what() const throw ()  {
        return x;
    }
};
Run Code Online (Sandbox Code Playgroud)

错误是:

solution.cc:12:22:错误:为'virtual const int指定的冲突返回类型BadLengthException :: what()const'virtual const int what()const throw(){^ ~~~包含在/ usr/include中的文件/ c ++/7/exception:38:0,来自/ usr/include/c ++/7/ios:39,来自/ usr/include/c ++/7/ostream:38,来自/ usr/include/c ++/7/iostream :39,from solution.cc:1:/usr/include/c++/7/bits/exception.h:69:5:错误:覆盖'virtual const char*std :: exception :: what()const'what( )const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;

c++ c++11

2
推荐指数
1
解决办法
358
查看次数

标签 统计

c++ ×1

c++11 ×1