示例代码:
#includestruct Point { inline static int x = 0;// 内联静态成员的初始化 inline static auto y = 1.0;// 使用 auto推断其类型 inline static decltype(y) z = 2;// 使用 decltype 来声明其类型 }; int main() { Point p1; p1.x = 10; p1.y = 20.156; p1.z = 30.23; // 成员访问 std::cout << "x: " << p1.x << " y: " << p1.y << " z: " << p1.z << std::endl; std::cout << "y: " << Point::y << std::endl; }
好奇怪,上次明明可以运行的居然报错。。。
报错:
E2860 无法将非静态数据成员声明为 inline C7525 内联变量至少需要 "/std:c++17"
提示不是std:c++17
查看属性又确实是std:c++17以上版本。
突然发现不支持X86.。。。
在x86下:
切换X64,错误神奇的消失了。。。



