c++ - 如何在Qt上获取当前路径

标签 c++ qt path

我的 Qt 项目文件中有一个包含着色器的文件。

当我试图获取应用程序的路径时

QCoreApplication::applicationDirPath()

它给我:

"C:/Users/USER_NAME/Desktop/PROJECT_NAME/build-PROJECT_NAME-Desktop_Qt_5_7_0_MinGW_32bit-Debug/debug"

但实际上,着色器文件位于:

"C:/Users/USER_NAME/Desktop/PROJECT_NAME/PROJECT_NAME/shaders"

如何获得正确的路径?

最佳答案

您得到了正确的结果。默认情况下,包括 Qt Creator 在内的大多数 IDE 会将项目编译到不同于存储源代码的目录,并从那里或从另一个位置运行它。

假设您使用的是 Qt Creator,您可以在项目设置面板中更改可执行文件的工作目录:

screenshot

关于c++ - 如何在Qt上获取当前路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39980919/

相关文章:

C++ 处理未捕获的异常

c++ - 仅在 C++ 中对一个变量进行两个变量函数的数值积分(使用 Numerical Recipes 库)

qt - qtcreator 与 cmake 存储在哪里运行和build设置,以及如何通过脚本设置?

android - 如何使用 canvas.. 在 onDraw() 中使用 path() 设置起点?

c++ - 同一对象(由内存地址推导)构造两次而没有破坏

qt - 在设计时为 QTableWidget 设置列宽

qt - qt中临时父级和父级之间的区别

bash - 将磁盘添加到 fstab(如果不存在)的脚本

path - Windows 10如何添加文件夹到 `Path`环境变量(附截图)

c++ - 为什么 vtable 不能包含重复的函数?