你的 move 语义正在被 NRVO 静默优化掉——从 copy elision 到 guaranteed elision,拆解返回值优化的 3 层编译器决策树 你大概率写过这样的代码——为了"高性能",给自己的类精心实现了移动构造函数,甚至在里面加了一行计数器,想着统计一下到底发生了多少次 move:structWidget{std::vectorintdata;staticintmove_count;Widget():