如何在同一解决方案下为多个项目声明常见的#define?

时间:2012-12-23 12:15:00

标签: c++ visual-studio-2010 macros versioning definition

我在同一解决方案下有几个项目。 我想将它添加到我的所有.rc文件中:

#define STR(x) #x
#define STRING(x) STR(x)
#define TESTER STRING(MACRO1.MACRO2)

MACRO1 = 9
MACRO2 = 10
these are two macros that I added at the property pages using : "User Macros"

我想使用相同的“用户宏”但是如何在那里声明带参数输入的宏? 我还想过使用头文件但仍然是重复...

有没有办法在常用属性中定义这些STR和STRING?或者不知何故只是为了我的项目阅读它们?而不是向我的所有来源添加相同的代码?

感谢

1 个答案:

答案 0 :(得分:1)

您可以创建包含所有全局数据的头文件,并将其放在解决方案目录中。然后将此文件作为现有项添加到解决方案中。例如defines.h

#pragma once
#define STR(x) #x
#define STRING(x) STR(x)
#define TESTER STRING(MACRO1.MACRO2)

MACRO1 = 9
MACRO2 = 10

你可以在任何需要的地方用这样的相对地址来解决这个标题(假设你有一个每个项目的文件夹):

#include "../defines.h"

或者您可以将地址添加到项目中的其他包含文件中。