精华内容
下载资源
问答
  • 通常出现这种无法解析的命令,网上查找大多数说的都是:链接出错 分析原因: 要么是lib文件没有配置对,要么就是代码里面声明与定义不一致(声明了没有定义,定义了却没有声明,这都会导致编译器在编译链接的时候找...

    通常出现这种无法解析的命令,网上查找大多数说的都是:链接出错
    分析原因:

    要么是lib文件没有配置对,要么就是代码里面声明与定义不一致(声明了没有定义,定义了却没有声明,这都会导致编译器在编译链接的时候找不到对应的文件而出错)

    原因1:只包含了头文件,只有这个函数的声明,没有包含这个函数的实现(实现一般放在cpp文件中的)。所以只能通过编译,连接不成功。
    原因2:另一个原因是函数的声明和实现都放在头文件中了,一般要把声明放头文件中,实现放在cpp文件中。这样每个#include该头文件的文件都会有一份该函数的实现,连接的时候,连接器不知道连接哪一个实现,于是报错。
    

    网上查找的具体做法无外乎:
    方法一:
    VC6:

    工程、设置、C/C++、分类:Preprocessor、附加包含路径:填写附加头文件所在目录 逗号间隔多项
    工程、设置、Link、分类:Input、附加库路径:填写附加依赖库所在目录 分号间隔多项
    工程、设置、Link、分类:Input、对象/库模块:填写附加依赖库的名字.lib 空格间隔多项
    

    VS:

    项目、属性、C/C++、附加包含目录:填写附加头文件所在目录 分号间隔多项
    项目、属性、链接器、常规、附加库目录:填写附加依赖库所在目录 分号间隔多项
    项目、属性、链接器、输入、附加依赖项:填写附加依赖库的名字.lib 空格或分号间隔多项
    

    方法二:
    就是在.cpp文件里面直接加上一句:

    #pragma comment(lib,"xxxxx.lib")
    

    但是我想说的是:我按照上面的方法都把我需要的静态库添加上去了,但是还是报错。

    错误	1	error LNK2019: 无法解析的外部符号 "public: bool __thiscall CxImage::Load(wchar_t const *,unsigned int)" (?Load@CxImage@@QAE_NPB_WI@Z),该符号在函数 "unsigned int * __cdecl Make_2BPP_Bitmap(wchar_t const *)" (?Make_2BPP_Bitmap@@YAPAIPB_W@Z) 中被引用	E:\XD\2_project\6_191\191\emp191prt\emp191prt\Bitmaps.obj
    错误	2	error LNK1120: 1 个无法解析的外部命令	E:\XD\2_project\6_191\191\emp191prt\Debug\emp191prt.dll	1
    
    

    一直以来,我以为出现这种无法解析的外部命令都是链接出错,没有仔细看错误的内容,最后经过查找才发现我连接的静态库的文件是多字节的,但是这里是宽字节
    在这里插入图片描述
    直接进入,项目属性那里将字符集改为多字节即可。
    在这里插入图片描述

    展开全文
  • 分析问题: 这个问题原因是有头文件,但是找不到实现。 有两个原因:1.只包含了头文件,只有这个...这样每个#include该头文件文件都会有一份该函数实现,连接时候,连接器不知道连接哪一个实现,于是报错...

    分析问题:
    这个问题的原因是有头文件,但是找不到实现。
    有两个原因:1.只包含了头文件,只有这个函数的声明,没有包含这个函数的实现(实现一般放在cpp文件中的)。所以只能通过编译,连接不成功。
    2.另一个原因是函数的声明和实现都放在头文件中了,一般要把声明放头文件中,实现放在cpp文件中。这样每个#include该头文件的文件都会有一份该函数的实现,连接的时候,连接器不知道连接哪一个实现,于是报错。
    反正开始看到这些解释我是一脸懵逼的,但自己找到问题后,发现这个解释还是挺专业的。
    接下来是我遇到这个错误的原因

    class BinaryTreeNode
    {
    friend class BinaryTree;
    private:
    char element;//节点的数据域
    BinaryTreeNode leftChild;//结点的左孩子节点
    BinaryTreeNode rightChild;//结点的右孩子节点
    public:
    BinaryTreeNode();//默认构造函数
    BinaryTreeNode(const char&ele)//给定数据域的值的构造函数
    {
    element=ele;
    leftChild=NULL;
    rightChild=NULL;
    }
    BinaryTreeNode(const char&ele,BinaryTreeNode
    l,BinaryTreeNode
    r)//给定数据值和左右孩子结点的构造函数
    {
    element=ele;
    leftChild=l;
    rightChild=r;
    }
    BinaryTreeNodegetLeftChild()const//返回该节点的左孩子节点
    {
    return leftChild;
    }
    BinaryTreeNode
    getRighttChild()const//返回该节点的右孩子节点
    {
    return rightChild;
    }
    }
    这是二叉树的结点类的一部分,而声明了却没有定义的默认构造函数正是造成标题错误的其中之一。所以就个人经验而谈,类中声明的函数结构请一定别忘了定义(简单两个大括号也好呀),不然标题这个错误找起来真心痛苦。
    2.

    void main()
    {

    }
    解决方法一:同时存在.h和.cpp,cpp中函数已经定义,依旧提示无法解释的外部符号

    VS中对文件有中表示,可以通过选中.h或.cpp文件,右键,属性–通常–项类型中

    C/C++标头是针对头文件的,C/C++编译器是针对cpp文件,根据这个改正就好了

    这次出现的原因应该是本人一开始在.h文件中定义函数,而没有创建一个cpp文件,VS把它当成cpp来用吧

    后来本人又创建了一个cpp文件,C/C++编译器属性被.h文件占用了,cpp文件就不认识了

    解决方案二
    .cpp 文件中没有包含.h文件

    解决方案三
    在.cpp文件中不能将类的实现变成inline函数,否则也会出现这种错误。

    我们在写C++构造函数的时候,总是会在.h文件里直接声明。因为没有用到,所以可能都没有.cpp文件的实现,或者直接都没有实现,这里就会出现经常出现的问题:

    譬如:

    错误 52 error LNK2019: 无法解析的外部符号 “public: __thiscall DialogHandler::DialogHandler(char const *)” (??0DialogHandler@@QAE@PBD@Z),该符号在函数 “public: __thiscall DialogHandlerShop::DialogHandlerShop(void)” (??0DialogHandlerShop@@QAE@XZ) 中被引用 D:\work\cocos2dx_game_popstar_TV\proj.win32\SceneGame.obj

    我们会找很多原因,但是其实就是:构造函数没有实现,只是做了声明才导致的!你在你的构造函数后面加上一对括号就可以验证了。

    展开全文
  • 一个简单程序但在编译时候出现了错误。 创建了一个项目,问题依然出现,不知如何解决。在网上搜索发现没有特别明确解决方案,求大佬帮忙解答。![图片说明]...
  • VS错误 2 error LNK1120: 1 个无法解析的外部命令

    万次阅读 多人点赞 2015-12-23 09:11:46
    这个问题原因是有头文件,但是找不到实现。 有两个原因: 1.只包含了头文件,只有这个函数声明,...这样每个#include该头文件文件都会有一份该函数实现,连接时候,连接器不知道连接哪一个实现,于是报错。
    这个问题的原因是有头文件,但是找不到实现。
    有两个原因:
    1.只包含了头文件,只有这个函数的声明,没有包含这个函数的实现(实现一般放在cpp文件中的)。所以只能通过编译,连接不成功。
    2.另一个原因是函数的声明和实现都放在头文件中了,一般要把声明放头文件中,实现放在cpp文件中。这样每个#include该头文件的文件都会有一份该函数的实现,连接的时候,连接器不知道连接哪一个实现,于是报错。
    展开全文
  • 踏上计算机之路一个最简单程序,就出现了错误,第一次出现这个错误,百度了很久之后找到一个解决办法,但是后来就没再继续了,当我第二次编写这个程序时又出现了同样错误,然而我已经忘记解决办法了,这次...

    **解决办法:**在建立新文件时加后缀.cpp即可解决。

    踏上计算机之路的第一个最简单的程序,就出现了错误,第一次出现这个错误,百度了很久之后找到一个解决办法,但是后来就没再继续了,当我第二次编写这个程序时又出现了同样的错误,然而我已经忘记解决办法了,这次百度了许久找不到上次的那个解决办法了,只能模糊记得一些,尝试了许久,终于解决了。

    问题原因:建立新文件时没有加后缀.cpp,源文件那里就显示为不识别文件,右边代码也没有颜色,生成解决办法时就会出现这样的错误。
    在这里插入图片描述
    **解决办法:**在建立新文件时加后缀.cpp即可解决。

    如果不重新建文件的话,就源文件添加现有项,添加时将源文件重命名加后缀.cpp,将加了后缀的文件添加进来,重新生成即可成功。

    在这里插入图片描述小白一枚,因为自己在这个问题上困惑了很久,在网上都没有找到解决办法,所以想要分享一下,主要是也记录一下自己学习中遇到的问题,刚开始,也不懂什么术语,如有什么说法不正确的地方,还望前辈们指出。

    有两个疑问:
    1.为什么《C++程序设计》书上(谭浩强版)新建文件时并没有加后缀.cpp?(这让我这个看书操作的人困惑很久啊~)
    2.为什么直接在左边重命名源文件,真正的源文件名字并没有改变?

    望前辈们指点~

    展开全文
  • 一、问题:使用一个.lib出现如下... fatal error LNK1120: 1 个无法解析的外部命令; 二、出现该问题的原因:  1.原因:最大的可能就是使用的lib在引用的时候没添加好。  解决方法:需要查看一下调用的配置...
  • 使用 C++ 去调用C函数时,明明cpp文件中已经添加加了extern “C”, 为什么编译时候vs还会报错呢,可能你忽略了一个简单问题
  • 最近想搞OpenCV,下载OpenCV之后就像网上许多人说的那样利用VS2013搭建了一个开发环境,把样例程序复制过来进行编译的时候,Debug版本正常,但是生成Release版本的时候却出现了一堆无法解析的外部命令。在排除了是...
  • (https://img-ask.csdn.net/upload/201510/07/1444193736_602204.png)图片说明](https://img-ask.csdn.net/upload/201510/07/1444193658_525234.png)这个是我在网上找的一个例子,没出现红下标,,但是ctrl+F5就有...
  • 这个问题原因是有头文件,但是找不到实现。 有两个原因: 1.只包含了头文件,只有这个函数声明...这样每个#include该头文件文件都会有一份该函数实现,连接时候,连接器不知道连接哪一个实现,于是报错。...
  • 本人小白一个,看到很多人说是lib库问题,不知道lib是什么,也不要知道该怎么添加,求指点,谢谢。。。 不知道要不要附上程序,,下面是我程序 #include using namespace std; const int MaxSize = 10;...
  • 解决方法:同时存在.h和.cpp,cpp中函数已经定义,依旧提示无法解释的外部符号 VS中对文件有中表示,可以通过选中.h或.cpp文件,右键,属性–通常–项类型中 C/C++标头是针对头文件的,C/C++编译器是针对cpp文件,...
  • 使用模板类时,应将使用到模板函数其声明与实现放在同一个文件中,否则会导致链接错误,在DevC++中可能会出现undefined reference to…错误,也是同样道理。 ...
  • 1 个无法解析的外部命令 产生bug原因 声明函数与定义函数的函数类型不一致 解决办法: 将定义函数与声明函数类型改为一致 例: 声明写的是void InsertList(Seqlist*,int ,int); 定义写的是int InsertList(Seqlist *...
  • 哪怕是这样一个小学生都能看懂程序temp1.c,也不给通过!!!。 #include <stdio.h> //temp1.c int main() { printf("Hello, World!"); return 0; } 这么个程序,5个错误!我承认我很久没敲了,但也
  • 项目场景: 在编写C++类的静态属性时报了这样一个错误: error LNK2001: 无法解析的外部符号 ...1bug\youXi_fuSheng_liuJi.exe : fatal error LNK1120: 1 个无法解析的外部命令 1>已完成生成项目“youXi_fuSheng_li
  • 、前言 如图所示,C++使用VS写完单例模式后,报如下错误: 错误 LNK2001 无法解析的外部符号 “private: ...错误 LNK1120 1 个无法解析的外部命令 二、代码 2.1 SingletonPattern.h #pragma once #include <ios
  • VS + Qt开发过程中有时候会新增一个QtClass(带Q_OBJECT定义类时),发现编译无法通过,可能会出现LNK2001 错误,这是由于IDE没有自动为新建类生成 moc_XXXX.cpp 文件导致。网上很多博客上写使用moc命令来...
  •  ,问题描述 MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号...Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令 error LNK2001: unresolved external symb
  • c:\users\yz980\documents\visual studio 2010\Projects\yyyzzz\Debug\yyyzzz.exe : fatal error LNK1120: 1 个无法解析的外部命令 程序: // yyyzzzDlg.cpp : 实现文件 // #include "stdafx.h" #include...
  • #include<iostream> #include #include<iomanip> using namespace std; #include<stdlib.h> template class CMatrix ...1>F:\C++\ZYB\Debug\ZYB.exe : fatal error LNK1120: 2 个无法解析的外部命令
  • 带界面的vs程序编译出现以下...MSVCRTD.lib(exe_main.obj): error LNK2001:无法解析的外部符号main,该符号在函数中被引用: 1 个无法解析的外部命令 二、原因及解决办法 产生这个问题的真正原因是c语言运行时找不...
  • <code>#include<Windows.h> #include<iostream> #include<stdio.h> #ifdef _UNICODE #define __T(x) L ## x ...测试实例二三四"...错误 LNK1120 1 个无法解析的外部命令   </p>
  • 1>D:\vsprojects\chaper5\array3\Debug\array3.exe : fatal error LNK1120: 9 个无法解析的外部命令 补充:我将上述代码改写到同一个cpp文件中,发现问题解决。 我重新建立过项目和文件,确定不是建错工程、建错...
  • 经过我重新装Qt等系列尝试之后发现,这是在创建新项目时候Kid没有选对或者选了多导致问题,我电脑装vs2015,然后我kid只选择那个64bit mvs2015kid之后就能解决...
  • 1>D:\New Projects\VS_Project\QtGuiApplication7\Win32\Debug\\QtGuiApplication7.exe : fatal error LNK1120: 6 个无法解析的外部命令 1>已完成生成项目“QtGuiApplication7.vcxproj”的操作 - 失败。 ========== ...
  • 1>F:\minicraft\dev\server\AllServer\AllServer\Debug\GameServer.exe : fatal error LNK1120: 1 个无法解析的外部命令 如果参数为char*,则可以编译通过,但健壮性从此无法保障。请问大家遇到过类似问题么,因为...
  • 一个错误 LNK1120 1 个无法解析的外部命令 Project3 E:\OpenCV project\Project3\x64\Debug\Project3.exe 1 严重性 代码 说明 项目 文件 行 禁止显示状态 第二错误 LNK2019 无法解析的外部符号 "public: ...
  • build时提示出错: “显示图像.obj : error LNK2019: ...1>E:\LanguageS\VS Project\OpenCV显示图像\Debug\OpenCV显示图像.exe : fatal error LNK1120: 1 个无法解析的外部命令” 原因:没有在附加依赖项中加入cvcor

空空如也

空空如也

1 2 3 4
收藏数 71
精华内容 28
关键字:

vs一个无法解析的外部命令