C++ 程序不';在visual studio中启动时看不到文件
我有一段代码:C++ 程序不';在visual studio中启动时看不到文件,c++,visual-studio-2010,opencv,C++,Visual Studio 2010,Opencv,我有一段代码: int main() { string file = "stuff.jpg"; Mat img = imread(file); if (img.empty()) { printf("EMPTY"); system("PAUSE"); return -1; } imshow("display", img ); waitKey(0); return 0; } 当我在v
int main()
{
string file = "stuff.jpg";
Mat img = imread(file);
if (img.empty())
{
printf("EMPTY");
system("PAUSE");
return -1;
}
imshow("display", img );
waitKey(0);
return 0;
}
当我在visual中启动这个程序时,我发现img是空的,但是如果我从命令行运行或者只需双击,它就可以正常工作。在可视和命令行中运行时,顶部的路径是相同的。为什么会这样?从visual studio运行时,工作目录由项目属性控制:
Configuration Properties | Debugging | Working Directory
适当设置该文件名,或指定完整的绝对路径,而不是仅为文件名指定
“stuff.jpg”
。从visual studio运行时,工作目录由项目属性控制:
Configuration Properties | Debugging | Working Directory
适当地设置该值,或者为文件名指定完整的绝对路径,而不是只指定
“stuff.jpg”
。是否将图像放在调试目录中?是否确定visual从同一位置运行该程序?是的,如果双击启动该程序,它会起作用。似乎visual从调试中获取文件,并在不同的文件夹中执行它。给定绝对路径对两者都有效。是否将映像放在调试目录中?是否确定visual正在同一位置运行该程序?是的,如果双击启动该程序,它会起作用。似乎visual从调试中获取文件,并在不同的文件夹中执行它。给出绝对路径对两者都有效。美元(ProjectDir)在哪里?这不是调试可执行文件所在的位置吗?No.$(ProjectDir)是包含.vcproj文件的文件夹。No-它是项目文件所在的目录。如果编辑属性,将显示带有“宏>>”按钮的对话框。启用宏后,对话框将显示支持的宏名称及其当前的值。美元(ProjectDir)在哪里?这不是调试可执行文件所在的位置吗?No.$(ProjectDir)是包含.vcproj文件的文件夹。No-它是项目文件所在的目录。如果编辑属性,将显示带有“宏>>”按钮的对话框。启用宏后,对话框将显示支持的宏名称及其当前的值。