Cmake项目,在vs2022上用Debug-x64来debug。
Boost库用的1.89.0版本的,通过vcpkg导入到项目,都是带-gd的,应该都是debug版本(boost_atomic-vc143-mt-gd-x64-1_89.dll)
出问题的代码在↓

一开始执行了184行就报错
报错信息:Exception thrown: read access violation.this->**content** was 0xF.
后来一个个排查后发现是196行 po::bool_switch()->default_value(false)这一句有问题,遂改成了↓的写法,184行就没有再报错
bool flag = true;
("memory-lock", po::bool_switch(&flag), "Lock memory pages to prevent swapping")
然后今天执行到203行,又报错,用AddressSanitizer检查,发现下面的错误↓

接着今天就一直卡在这里过不去...
AddressSanitizer: global-buffer-overflow E:\Visual Studio\VisualStudio\VC\Tools\MSVC\14.44.35207\include\__msvc_string_view.hpp:121
目前情况就是GPT, deepseek都搜索过一遍,还是不知道问题的根源...
球球高手大佬们救救孩子
Boost库用的1.89.0版本的,通过vcpkg导入到项目,都是带-gd的,应该都是debug版本(boost_atomic-vc143-mt-gd-x64-1_89.dll)
出问题的代码在↓

一开始执行了184行就报错
报错信息:Exception thrown: read access violation.this->**content** was 0xF.
后来一个个排查后发现是196行 po::bool_switch()->default_value(false)这一句有问题,遂改成了↓的写法,184行就没有再报错
bool flag = true;
("memory-lock", po::bool_switch(&flag), "Lock memory pages to prevent swapping")
然后今天执行到203行,又报错,用AddressSanitizer检查,发现下面的错误↓

接着今天就一直卡在这里过不去...
AddressSanitizer: global-buffer-overflow E:\Visual Studio\VisualStudio\VC\Tools\MSVC\14.44.35207\include\__msvc_string_view.hpp:121
目前情况就是GPT, deepseek都搜索过一遍,还是不知道问题的根源...
球球高手大佬们救救孩子
