找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 647|回复: 5

[求助]:一个关于自定义类的问题

[复制链接]
发表于 2006-2-6 12:36:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
不知大家是否注意到没有,在采用向导生成的自定义类中总是会存在下面一条不明代码:

#pragma warning(disable: 4275 4251)
这行代码不知在警告什么东西?


类的头文件如下:
// WJRedSpline custom object.
#if !defined(ARX__WJREDSPLINE_H__20050911_162028)
#define ARX__WJREDSPLINE_H__20050911_162028
#if _MSC_VER > 1000
#pragma once
#endif
#pragma warning(disable: 4275 4251)    奇怪代码?????
#ifdef _MYSPLINE_
#define DLLIMPEXP __declspec(dllexport)
#else
#define DLLIMPEXP
#endif
#ifndef WJMYSPLINE_DBXSERVICE
#define WJMYSPLINE_DBXSERVICE "WJMYSPLINE_DBXSERVICE"
#endif
#include "dbspline.h"

class DLLIMPEXP WJRedSpline : public AcDbSpline
{。。。。。
}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-2-6 19:57:05 | 显示全部楼层
MSDN里的说明:
Compiler Warning (level 1) C4251
'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'
The specified base class was not declared with the __declspec(dllexport) keyword.
A base class or structure must be declared with the __declspec(dllexport) keyword if a function in a derived class is to be exported.

Compiler Warning (level 2) C4275
non – DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
An exported class was derived from a class that was not exported.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-7 10:13:13 | 显示全部楼层
不是很明白,我是用向导生成,为何也会有这样的现象呢?楼上的兄弟,请问你是如何弥补的?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-2-7 11:10:06 | 显示全部楼层
我没有用向导生成,不是很清楚,这可能是避免在编译时出现警告信息,其实也没什么影响的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-2-7 17:46:43 | 显示全部楼层
#pragma warning(disable: 4275 4251)
就是为了避免编译的时候出现许多
警告错,因为AcDbSpline并没有Dll的输出定义
__declspec(dllexport)
其中4275,4271是编译警告错误的代号,
假如你需要避免其他的警告错误出现,可以在上面的
式子中增加相应的粗误代号。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-7 20:45:21 | 显示全部楼层
太感谢楼上两位兄弟了,这样我就清楚多了,还是感谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-15 13:34 , Processed in 0.470369 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表