如何在工程A中使用工程B中定义好的类?

时间:2022-03-01 20:50:04
我想使用CppUnit进行测试. 结果发现测试工程A必须要使用被测试工程B中定义好的类.

有什么方法可以在不污染工程B的代码的前提下(在少量文件中添加少量代码可以接收,针对每个类添加代码也可以接收), 让工程A使用工程B中的类吗?

5 个解决方案

#1


在A里加入B中类的头文件和源文件,并设置好路径

#2


一楼正解

#3


并且#include近来就好了

#4



1、拷贝B工程中类的CPP和H文件到A工程文件夹;

2、打开A工程,打开WORKSPACE的 FileView 选项卡;

3、右击 Header Files 弹出菜单,选择 Add Files to Folder...,指定H文件;

4、右击 Source Files 弹出菜单,指定CPP文件;

这时,已经将类加入到A工程当中,可以使用了。

#5


把cpp和h文件拷过来并加入的话确实是可以, 但是复制过来的cpp和h中很可能会包含其它文件(比如说我用一个文件定义了全局变量),这样我就必须把他们包含的文件也拷过来,比较麻烦,如果不考的话,我就必须修改VC的环境变量来增加include的目录, 这样我每测一个工程就要修改一次环境变量,比较麻烦啊.

有没有其它的办法,比如说把被测试工程的类导出到dll里面去,然后在测试工程中使用这些dll.
我知道可以建一个dll工程, 但是被测程序毕竟是要运行的,所以一般会是一个MDI工程,或者dialog based工程, 这两种工程中的类如何导出到dll中去, 在测试程序中又如何使用这些dll.

最好按 zaodt(至尊宝宝:我就在你身旁,关心永远不打烊!) 的格式写, 本人菜鸟:(, 写简单了怕看不懂:(

#1


在A里加入B中类的头文件和源文件,并设置好路径

#2


一楼正解

#3


并且#include近来就好了

#4



1、拷贝B工程中类的CPP和H文件到A工程文件夹;

2、打开A工程,打开WORKSPACE的 FileView 选项卡;

3、右击 Header Files 弹出菜单,选择 Add Files to Folder...,指定H文件;

4、右击 Source Files 弹出菜单,指定CPP文件;

这时,已经将类加入到A工程当中,可以使用了。

#5


把cpp和h文件拷过来并加入的话确实是可以, 但是复制过来的cpp和h中很可能会包含其它文件(比如说我用一个文件定义了全局变量),这样我就必须把他们包含的文件也拷过来,比较麻烦,如果不考的话,我就必须修改VC的环境变量来增加include的目录, 这样我每测一个工程就要修改一次环境变量,比较麻烦啊.

有没有其它的办法,比如说把被测试工程的类导出到dll里面去,然后在测试工程中使用这些dll.
我知道可以建一个dll工程, 但是被测程序毕竟是要运行的,所以一般会是一个MDI工程,或者dialog based工程, 这两种工程中的类如何导出到dll中去, 在测试程序中又如何使用这些dll.

最好按 zaodt(至尊宝宝:我就在你身旁,关心永远不打烊!) 的格式写, 本人菜鸟:(, 写简单了怕看不懂:(