以下在调试模式下为 x64 编译并在 Visual Studio 2013 调试器中运行的最小代码示例产生一个
... 处未处理的异常:访问冲突写入位置 0xFEEEFEEE。
调试时,我看到访问冲突发生在“return 0”;陈述。
(当在没有调试器的情况下从控制台运行时,错误显示为“0x 处的指令……引用了 0xddddddd 处的内存……无法写入内存。”)。
#include <atomic>
#include <string>
int main()
{
std::atomic<std::string> a1("127.0.0.1:41001");
std::string ep1_1 = a1.load();
std::string ep1_2 = a1.load();
return 0;
}