C++ 我应该把C++;自定义异常代码?
我正在为我编写的生成随机短语的类编写自定义异常。我是C++新手,我想知道我是否应该把异常放在类头文件中,在Copy.CPP文件中,或者如果需要分割声明和实现。 Eclipse在main()方法中给了我一个错误,该错误表示:C++ 我应该把C++;自定义异常代码?,c++,class,exception,header,C++,Class,Exception,Header,我正在为我编写的生成随机短语的类编写自定义异常。我是C++新手,我想知道我是否应该把异常放在类头文件中,在Copy.CPP文件中,或者如果需要分割声明和实现。 Eclipse在main()方法中给了我一个错误,该错误表示: error: 'FileException' does not name a type } catch (FileException& e) { 异常类看起来像: class FileException : public std::exception {
error: 'FileException' does not name a type
} catch (FileException& e) {
异常类看起来像:
class FileException : public std::exception {
public:
const char* what() {
return "File Could not be opened.";
}
}FileException;
对于这个问题的任何想法都将不胜感激,因为我非常困惑和困惑
谢谢
编辑:我还应该提到,我只应该提交两个文件,类的.cpp文件和.h文件。删除变量(您可能不需要它),或者为类和变量使用不同的名称
说明:
FileException
是一个类。酷
public:
const char* what() {
return "File Could not be opened.";
}
}FileException;
最后一位定义了一个名为FileException
的FileException
类型的变量,该变量替换FileException
类。这与定义相同
class FileException : public std::exception {
public:
const char* what() {
return "File Could not be opened.";
}
};
FileException FileException;
标识符
FileException
现在引用变量,而您不能引用类。为非异常的类做您想做的事情。就个人而言,我喜欢使用而不是自定义异常,因为我可以在抛出站点给它一条自定义消息,这样可以更容易地找出抛出异常的原因。
class FileException : public std::exception {
public:
const char* what() {
return "File Could not be opened.";
}
};
FileException FileException;