我有一个c ++ visual studio项目(比如p1),其中一个头文件(例如h1.h)我有 #define a 5 该项目还有许多其他.cpp文件,其中许多包括h1.h
现在我想要一个不同的独立项目(比如说p2),其中唯一的变化是在h1.h中 #define a 6
我想在p2中重用p1的所有文件。问题是我可以设计一种方式,使我在同一个解决方案中有两个这样的项目,而不会复制太多的文件。
答案 0 :(得分:1)
您可以为项目使用类似的文件夹结构:
MySolution\
Common\
Proj1\
Proj2\
如果您(或IDE)不喜欢'Common'文件夹,您还可以将公共文件保存在'MySolution'文件夹中并包含以下语句:
#include "../h1.h"
在您的项目中为公共文件。您还可以在多个项目中包含来自公共文件夹的共享代码文件。当它们都处于同一层次结构中时,IDE看起来很满意,但如果它们处于完全不同的层次结构中,它可能会抱怨(但仍然有效)。
答案 1 :(得分:0)
将所有常用文件放在common_dir\*.cpp
文件夹中,将标题文件放在p1_dir\h1.h
和p2_dir\h1.h
中。
答案 2 :(得分:0)
我最终做的是将#define作为预处理器指令放在项目设置中(只是将其移出代码头文件)并解决了我的问题。