【问题标题】:Preprocessor Definition in VS2010 for C++VS2010 for C++ 中的预处理器定义
【发布时间】:2012-01-27 19:12:53
【问题描述】:

我正在尝试了解 C++ 中预处理器定义的需求和用法。我了解包含保护#ifndef #define 和#endif 的使用。但是我不完全理解需要的用法:

Open the project's Property Pages dialog box.
Click the C/C++ folder.
Click the Preprocessor property page.
Modify the Preprocessor Definitions property.

【问题讨论】:

  • 这只是一种在不更改代码的情况下执行#define 的方法。

标签: c++ visual-studio-2010


【解决方案1】:

如果您的源文件中有#ifdef#ifndef,这是一个可以影响这些测试结果的地方。

【讨论】:

  • 好的,这是否意味着如果我有一些代码#ifndef TEST32 代码;代码;代码#endif,我把TEST32放在“预处理器定义”中,正如我上面提到的,我不需要在我的代码中包含#define TEST32。我没有将 TEST32 添加到预处理器定义中,然后我需要在我的代码中包含#define TEST32。我的理解正确吗?
  • 对,这是一个无需编辑源代码即可添加定义的地方。
【解决方案2】:

预处理器定义用于当前项目的全局预处理器定义;通常是系统或编译器预处理器定义。

例如,在调试模式下,如果用户(程序员)在调试模式下构建时想要做一些不同的事情,则在编译代码时将使用 _DEBUG 定义之一:

#ifdef _DEBUG
/// do something ONLY in debug mode
#endif

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 2018-02-10
    • 1970-01-01
    • 2015-03-29
    • 2023-03-10
    • 2010-11-10
    相关资源
    最近更新 更多