如何编写既有throw又有成员初始化列表的ctor定义?它是否正确?
ClassName::ClassName(int parameter): datamember_(parameter) throw(ExceptionType)
Run Code Online (Sandbox Code Playgroud)
该throw东西是函数声明符的一部分,因此它应该出现在初始化列表(the :)之前.
ClassName::ClassName(int parameter) throw(ExceptionType) : datamember_(parameter) {
Run Code Online (Sandbox Code Playgroud)
顺便说一下,异常规范在C++ 0x中已弃用,除了throw()它通常是无用的.请参阅我应该在C++中使用异常说明符吗?.