这是因为代码中包含的相对路径的原因。
解决办法:把项目中包含的所有相对路径修改为绝对路径。
(个人觉得因为直接执行exe文件,默认打开在C盘的用户目录下。)
例如:
std::string DATA_DIR = "data/";
修改为:
std::string DATA_DIR = "E:/VS2017_Project/Project1/Identification/data/";
我尝试把路径加入到系统环境变量中,也没有成功。
在CMD命令行中,切换目录到VS2017项目的路径下,执行绝对路径的exe,才发现可以成功,才发现是调用路径的问题。