Before
考虑有一个类和一个全局函数:
例如,这是usefulfuncts.hpp
void dosome(int a, int b) throw (std::exception);
This is usefulfuncts.cpp
void dosome(int a, int b) throw (std::exception) {
//...
}
这是aclass.hpp
class aclass {
// Members...
friend void dosome(int a, int b) throw (std::exception);
// Members...
};
之后(我希望是什么)
好的!我想了解是否有必要每次都写throw
条款。例如我可以这样做吗?
This is usefulfuncts.hpp
void dosome(int a, int b) throw (std::exception);
This is usefulfuncts.cpp
void dosome(int a, int b) { /* OMITTING IT! */
//...
}
这是aclass.hpp
class aclass {
// Members...
friend void dosome(int a, int b); /* OMITTING IT */
// Members...
};
这是正确的吗?仅将其放在主声明中?谢谢
省略异常规范意味着您的函数可能会抛出异常any例外。
异常规范很糟糕。几乎没有任何编译器能够正确实现该功能。自 C++11 标准以来,它们已被弃用。事实上,异常规范被认为是一次失败的实验,即使它们是 C++03 标准的一部分。
好读:
务实地看待异常规范 http://www.gotw.ca/publications/mill22.htm
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)