初始化列表
class A {
public:
A(int x) : a(x), b(x) {}
private:
int a;
const int b;
};
const 成员函数
class Counter {
public:
int get() const { return n; }
void inc() { n++; }
private:
int n = 0;
};
const Counter c;
c.get();
返回值优化(RVO)
#include <string>
std::string f() {
std::string s = "hello";
return s;
}
std::optional
#include <optional>
std::optional<int> find() {
return std::nullopt;
}
auto x = find();
if (x) { }
结构化绑定
#include <tuple>
std::tuple<int, std::string> f() { return {42, "hi"}; }
auto [x, s] = f();