注册 登录
编程论坛 C++教室

一个怪异的似乎没有函数体的定义函数方法

maguangzhi 发布于 2021-11-28 20:06, 1262 次点击
C++2017标准(参见《C++程序设计精要教程》)支持一些特别的定义的方法。试看下例
class A {
    int x;
public:
    A(int m) try : x(m) { }  catch (...) {}
}m(3);
int  main( )
try {
    return 2'11'7;
}
catch (...) { }
1 回复
#2
rjsp2021-11-29 08:05
class A {
    int x;
public:
    A(int m) try : x(m) { }  catch (...) {}
}m(3);
int  main( )
try {
    return 2'11'7;
}

catch (...) { }

红色标注的部分不是函数体是什么?再说它们自古有之,不是C++17引入的部分。
反而是你没提到的 2'11'7 比较新,在C++14时引入。
1