读书人

晚下好遇到一个宏导致的异常

发布时间: 2012-08-21 13:00:21 作者: rapoo

晚上好,遇到一个宏导致的错误
Test解决方案下有

Test1工程

Test2工程

文件路径为:

Test\Test1\Test2



Test2工程

Sample.h

#ifdef _SUPPORT_XY
class Sample
{
public:
Sample();
~Sample();
};

#endif


Sample.cpp

#include"stdafx.h"
#include"Sample.h"
#ifdef _SUPPORT_XY

对Sample的析构,构造实现,不写了,代码大家都懂

#endif


然后在stdafx.h中定义了 _SUPPORT_XY




分割线



Test1工程:

main.cpp

#include"stdafx.h"
#include".\Test2\Sample.h"

int main()
{
#ifdef _SUPPORT_XY

Sample sa;
#endif


}

同时在stdafx.h中定义 _SUPPORT_XY


连接后,就报错,什么原因呢? 不是编译错误,是连接错误


代码手头不再,当时记得就是如此

[解决办法]
1. 工程2的Sample.h没有#include "stdafx.h",加上。
2.
class Sample
{
public:
Sample(void);
~Sample(void);
};
改成:
class Sample
{
public:
Sample(void){}
~Sample(void){}
};

再试试看。

读书人网 >C++

热点推荐