首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一个常见的有关问题不知怎么解决:error LNK2019: 无法解析的外部符号

2013-01-11 
一个常见的问题不知如何解决:error LNK2019: 无法解析的外部符号我用VC2005做一个界面,需要来控制一个机器

一个常见的问题不知如何解决:error LNK2019: 无法解析的外部符号
我用VC2005做一个界面,需要来控制一个机器人,使用了机器人自带的库Aria。
我新建了一个类RobotClient做测试,头文件RobotClient如下:

#include "stdafx.h"
#include "Aria.h"
#include "ArRobot.h"

class RobotClient
{
public:
RobotClient(void);
~RobotClient(void);
public:
ArRobot robot;  //ArRobot是在ArRobot.h中声明的类
int message;
};


C++实现文件中没有写什么东西:
#include "stdafx.h"
#include "RobotClient.h"
#include "Aria.h"

RobotClient::RobotClient()
{
message = 1;
}


点击生成解决方案,产生如下的错误提示:
1>RobotClient.cpp
1>正在链接...
1>RobotClient.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __thiscall ArRobot::ArRobot(char const *,bool,bool,bool,bool)" (__imp_??0ArRobot@@QAE@PBD_N111@Z),该符号在函数 "public: __thiscall RobotClient::RobotClient(void)" (??0RobotClient@@QAE@XZ) 中被引用
1>D:\My Documents\Visual Studio 2005\Motion_12_13\Debug\Motion.exe : fatal error LNK1120: 1 个无法解析的外部命令


ArRobot.h中已经有默认的构造函数:
 /// Constructor
  AREXPORT ArRobot(const char * name = NULL, bool ignored = true,
   bool doSigHandle=true, 
   bool normalInit = true, bool addAriaExitCallback = true);


可能有点低级,小弟刚刚接触这个东西,希望大家能够帮我一下,多谢了!

[解决办法]
这种情况很多是没有添加lib。
[解决办法]
#pragma comment(lib,"xxx.lib")
[解决办法]
VS吧?先在开头后面加一行,如下

#include "Aria.h"
#pragma comment(lib,"Aria.lib") // 具体名字和路径改一下

热点排行