有点弱智的问题?在线,急等!!
明明#include 已经包含了我的头文件,头文件中也有数据定义
但是编译的时候就是报错,说没有定义!!!!!!!
问题点数:10、回复次数:13Top
1 楼xibingwuqing(惜冰无情)回复于 2005-10-18 12:10:47 得分 1
包涵的头文件名不对,或者语句有问题Top
2 楼xibingwuqing(惜冰无情)回复于 2005-10-18 12:12:00 得分 1
如果真的急等,贴出代码来,也许问题只是几分钟的事Top
3 楼XBox360(菜)(鸟)回复于 2005-10-18 13:05:48 得分 1
支持贴一下代码Top
4 楼GWI2005()回复于 2005-10-18 13:47:15 得分 0
在AttrForm.cpp中开头就包含了#include "client.h"
在AttrForm.cpp中要用到client.h中这个结构
struct TInfo {
char Name[NAME_LEN];
char Style;
...
#ifdef __LINUX_OS
DWORD IPAddr;
...
#endif
};
AttrForm.h中声明了TInfo *pClientInfo;
但是编译老是报这样的错误!!
[C++ Error] AttrForm.cpp(60): E2316 'IPAddr' is not a member of 'TClientInfo'
只要是#ifdef __LINUX_OS下面的定义它都报“not a member ”的错误!
但是去掉#ifdef __LINUX_OS还是报错咧!!!!!!!!!!Top
5 楼GWI2005()回复于 2005-10-18 13:47:42 得分 0
急死我了,不晓得错在哪里!!Top
6 楼xibingwuqing(惜冰无情)回复于 2005-10-18 14:13:44 得分 1
个人猜测:编译的时候好像先编译AttrForm.h文件,AttrForm.h文件需要包含#include "client.hpp"或者什么东东
猜测而已,随便试试Top
7 楼foxyz(如风)回复于 2005-10-18 14:27:14 得分 1
define:
struct TInfo {...}
AttrForm.h中声明了TInfo *pClientInfo;
但是报错的是TClientInfo,我晕阿!这个是什么?你好像没说明阿。
AttrForm.cpp(60): E2316 'IPAddr' is not a member of 'TClientInfo'
我Top
8 楼GWI2005()回复于 2005-10-18 14:35:03 得分 0
是报这个错“is not a member of 'TInfo'”Top
9 楼foxyz(如风)回复于 2005-10-18 16:02:40 得分 1
从我的粗浅理解,要看,
1、是否打开了__Linux_OS
2、如果打开这个定义了,就看看IPAddr是否已经被在其他地方定义了,你把IPAddr改成IPAddr1试试
3、大小写区别?这个应该不是,因为你在ifdef内部好像还定义了其他的变量,那些没报错Top
10 楼GWI2005()回复于 2005-10-18 16:21:10 得分 0
只要是#ifdef __LINUX_OS
#endif
都打不开!!Top
11 楼GWI2005()回复于 2005-10-18 16:22:21 得分 0
怎么打开__Linux_OSTop
12 楼FengSC(小猪快跑)回复于 2005-10-18 16:30:43 得分 2
我猜是楼主在AttrForm.cpp中包含了AttrForm.h和client.h两个头文件.
如果这样写就不会有错:
#include "client.h"
#include "AttrForm.h"
如果这样写就会出错:
#include "AttrForm.h"
#include "client.h"
Top
13 楼lizijianlizijian(李子健)回复于 2005-10-18 16:40:37 得分 2
project->options->directories/conditionals
改路径!!!Top




