【问题标题】:How to get the $(ProjectDir) path in a Visual Studio native C++ Unit Testing using CppUnitTestFramework?如何使用 CppUnitTestFramework 在 Visual Studio 本机 C++ 单元测试中获取 $(ProjectDir) 路径?
【发布时间】:2014-08-06 00:57:50
【问题描述】:

我需要能够检索我的单元测试的项目目录路径,以便加载测试所需的一些文件。我不想硬编码,以防将来解决方案结构和绝对路径发生变化。

【问题讨论】:

    标签: c++ unit-testing


    【解决方案1】:

    好的,我就是这样做的:

    1. 在我的项目属性 -> 配置 -> C/C++ -> 预处理器中我添加了这个预处理器定义UNITTESTPRJ="$(ProjectDir)."

    2. 然后在我的 cpp 文件中我做了:

    #define STRINGIFY(x) #x

    #define EXPAND(x) STRINGIFY(x)

    string s = EXPAND(UNITTESTPRJ);
    s.erase(0, 1); // erase the first quote
    s.erase(s.size() - 2); // erase the last quote and the dot
    string my_project_dir = s;
    

    最后的愚蠢的.是必要的,以逃避项目目录中尾随的\"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多