![]() |
【转帖】连接错误 望高手指点
连接错误 望高手指点
连接错误 望高手指点 我欲做一个读取图元坐标点的程序,如下 #pragma once #include "dbmain.h" class ctuyuan : public acdbentity { public: ctuyuan(void); public: ~ctuyuan(void); public: static double ptx; public: static double pty; public: static void selent(ads_point pt1,ads_point pt2); //框选pt1,pt2 范围内的图元 }; double ctuyuan::ptx=0.00; //初始化静态变量 double ctuyuan::pty=0.00; //初始化静态变量 void ctuyuan::selent(ads_point pt1, ads_point pt2) { resbuf * rbent; ads_name ssname; if(acedssget(_t("c"),pt1,pt2,null,ssname)==rtnorm) { rbent=acdbentget(ssname); ptx = rbent->resval.rpoint[0] ; //读取图元的x坐标 pty = rbent->resval.rpoint[1] ; //读取图元的y坐标 } } 编译过了 但调试的时候出现如下错误 望高手指点 1>------ 已启动生成: 项目: check, 配置: debug win32 ------ 1>正在链接... 1>tuyuan.obj : error lnk5: "public: static double ctuyuan::ptx" (?ptx@ctuyuan@@2na) 已经在 chkdlg.obj 中定义 1>tuyuan.obj : error lnk5: "public: static double ctuyuan::pty" (?pty@ctuyuan@@2na) 已经在 chkdlg.obj 中定义 1> 正在创建库 d:\arx学习\check\win32\debug/check.lib 和对象 d:\arx学习\check\win32\debug/check.exp 1>chkdlg.obj : error lnk1: 无法解析的外部符号 "public: virtual int __thiscall caduibasedialog::oninitdialog(void)" (?oninitdialog@caduibasedialog@@uaehxz) 1>d:\arx学习\check\win32\debug/check.arx : fatal error lnk1120: 1 个无法解析的外部命令 1>生成日志保存在“file://d:\arx学习\check\check\win32\debug\buildlog.htm” 1>check - 4 个错误,0 个警告 ========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ========== 望大家帮忙分析一下 我经常出现这个问题 大概是你在其他的地方 引用了 它的头文件 d:\arx学习\check\win32\debug/check.arx : fatal error lnk1120: 1 个无法解析的外部命令 这个又是什么原因呢? 试下不用中文目录 不确定 建议一下 d:\arx学习\check\win32\debug/check.arx : fatal error lnk1120: 1 个无法解析的外部命令 这个又是什么原因呢? 你把前三个都解决了,这个致使错误也迎刃而解了! [ 本帖最后由 hi_tek 于 8-9-11 10:36 am 编辑 ] 你把前三个都解决了,这个致使错误也迎刃而解了! [ 本帖最后由 hi_tek 于 8-9-11 10:42 am 编辑 ] “1>tuyuan.obj : error lnk5: "public: static double ctuyuan::pty" (?pty@ctuyuan@@2na) 已经在 chkdlg.obj 中定义” 应该是在不同的文件中重定义了! [ 本帖最后由 hi_tek 于 8-9-11 10:42 am 编辑 ] “1>chkdlg.obj : error lnk1: 无法解析的外部符号 "public: virtual int __thiscall caduibasedialog::oninitdialog(void)" (?oninitdialog@caduibasedialog@@uaehxz) ” 应该是没定义的函数在别的函数中引用忘记更改了! [ 本帖最后由 hi_tek 于 8-9-11 10:44 am 编辑 ] 放在ctuyuan::ctuyuan(void)中初始化 ctuyuan::ctuyuan(void) { ptx=0.00; pty=0.00; } |
所有的时间均为北京时间。 现在的时间是 05:37 AM. |