VC总是报错error LNK2001的问题!万分着急!分全送了!

正在做题目为“基于SNMP的网络流量计费软件”的毕业设计,买了一本书名叫做"《Visual C++开发基于SNMP的网络管理软件》的书,书中有一个关于广域网流量统计的VC工程,我把这个工程考到自己电脑上以后VC编译的时候总是报错:
MyStringArray.obj : error LNK2001: unresolved external symbol "public: __thiscall Oid::Oid(char const *,bool)" (??0Oid@@QAE@PBD_N@Z)
MyStringArray.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall UdpAddress::set_scope(unsigned int)" (?set_scope@UdpAddress@@UAE_NI@Z)
MyStringArray.obj : error LNK2001: unresolved external symbol "public: virtual unsigned int __thiscall IpAddress::get_scope(void)const " (?get_scope@IpAddress@@UBEIXZ)
MyStringArray.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall IpAddress::set_scope(unsigned int)" (?set_scope@IpAddress@@UAE_NI@Z)
MyStringArray.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CTarget::clear(void)" (?clear@CTarget@@UAEXXZ)
MyStringArray.obj : error LNK2001: unresolved external symbol "public: virtual void%2
我把书上写的需要加进去的文件全加到LIB库进去了,可还是报错啊。谁能解释下上面这些错误的具体意思吗?
bpboy人太好了太感动了!!!我QQ153414572,我现在真是急得是热锅上的蚂蚁了啊,真的太感谢你了T_T

原因:缺少头文件或者缺少对应的库文件(lib文件)
检查原工程看看加了哪些头文件和lib文件

这个说来话长啊,每个函数编译时编译器都会在前面加"_"(下划线),就是你现在看到的样子,编译器编译这个函数时,并不知道要到哪去链接,所以产生了lnk2001错误,留下qq,把程序给我,我给你调试
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-04-20
错误类型都是一样的,我只说第一个

MyStringArray.obj : error LNK2001: unresolved external symbol "public: __thiscall Oid::Oid(char const *,bool)" (??0Oid@@QAE@PBD_N@Z)

这个提示是说你的程序中Oid::Oid这个函数在声明部分和你在实现这个函数的时候可能出现了某个参数或返回值上类型对应不一致的情况,你自己查看一下
第2个回答  2008-04-20
我有过类似的问题下面是我遇到的现象及解决方法:
=====================================================================
--------------------Configuration: huaxian - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/huaxian.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.

huaxian.exe - 1 error(s), 0 warning(s)
出错现象:Compile(编译Ctrl+F7)正常,但Build(构造F7)出错
出错原因:建立应用程序框架时出错.
1.不能只建立C++源文件,后创建工程,再Build
2.创建win32 Application工程时,只能创建一个空工程,然后再新建一个C++源文件
心得体会:
1、当complie成功而Build出错时,可断定不是代码输入出错。
2、例题如果没有指出用MFC建立应用程序框架或语句中大量使用API、GDI、句柄等window语句时,可断点为win32 Application工程
==========
我的直觉,你在建立应用程序框架时出错了!你应多试几种应用程序框架.就那么几种.慢慢试吧.如果成功了,最重要的事情是回来加分给我!
第3个回答  2008-04-19
错误是因为这几个类定义了虚函数但没去实现它

VC总是报错error LNK2001的问题!万分着急!分全送了!
原因:缺少头文件或者缺少对应的库文件(lib文件)检查原工程看看加了哪些头文件和lib文件 这个说来话长啊,每个函数编译时编译器都会在前面加"_"(下划线),就是你现在看到的样子,编译器编译这个函数时,并不知道要到哪去链接,所以产生了lnk2001错误,留下qq,把程序给我,我给你调试 ...

C语言出现error LNK2001错误
7.在不同的模块使用内联和非内联的编译选项能够导致LNK2001。如果创建C++库时打开了函数内联(\/Ob1或\/Ob2),但是在描述该函数的相应头文件里却关闭了函 数内联(没有inline关键字),这时将得到该错误信息。为避免该问题的发生,应该在相应的头文件中用inline关键字标志内联函数。8.不正确的\/...

VC总是报错error LNK2001的问题!万分着急!分全送了!
你这里显然出问题了:出错的函数是double __cdecl mbys(double,double *), 返回值为double, 需要的参数为double和double*, 但是据你所说, 你的函数是double *mbys(double *im,int imwidth,int imheight,double *tp,int tpwidth,int tpheight), 返回值为double*, 参数为六个, 这显然是不匹配...

error lnk2001VC描述
在编译过程中遇到了LNK2001错误,这是在Visual C++中一个常见的链接错误。具体错误信息提示"unresolved external symbol",即找不到链接的外部符号。在给出的错误中,我们看到几个相关的符号未解决,如_winmain@16,_main,_beginthreadex和_endthreadex,这些问题通常出现在程序试图调用但未正确链接到的库...

error lnk2001可能成因
当遇到LNK2001错误时,可能的原因有两个方面:首先,如果你使用Visual C++(vc)创建了一个控制台程序,但错误地使用了WinMain作为入口函数,而应该使用main。这是因为vc默认针对的是控制台程序,而WinMain通常是用于Windows应用程序的。如果你直接编译一个包含WinMain的.c或.cpp文件,这种混淆可能导致错误。...

VC中出现下面的情况怎么解决 error LNK2001: unresolved external...
error LNK2001...典型的原因是没法对某个.lib文件进行链接。可以从下面几个方面分析下:看下是不是没把库文件加入到你的工程中去?或者是代码中没加对库的调用?再可能就是代码中用库的API函数的地方头文件是否指定正确?

VC++6.0中的error LNK2001 和 fatal error LNK1120 的问题
应该是子系统未正确设置的原因 (1)VC6集成环境下:Project Settings -> Link 选项卡 -> 将\/SUBSYTEM:CONSOLE开关设置为 “未设置”或\/SUBSYSTEM:WINDOWS就可以了 (2)VS集成环境下:项目 -> 属性 -> 配置属性 -> 系统 -> 将子系统选择为“未设置”或“Windows (\/SUBSYSTEM:WINDOWS)”

编译错误,如何解决error LNK2001: unresolved external symbol_百 ...
导致“error LNK2001: unresolved external symbol”的原因为getStats此方法的链接库没有找到。很可能是工程中引用了第三方开源库或者自己编译生成的库,且只用了头文件,而没有将对应的lib文件路径加入到工程中。具体解决方法为(此方法针对vs系列集成开发环境):1.如果还未引入头文件,那么可以右键点击项目...

VC错误 msvcrt.lib(crtexe.obj) : error LNK2001: unresolved external...
明显是工程类型错误。你这个程序,从类列表看,是MFC文档视图框架工程。而从提示看,你的工程是控制台工程(console),才会有这样的报错。

vc6.0 报如下错误:fatal error LNK1120: 7 unresolved externals...
先确认一下编译lib的编译设置是否与工程设置一致,其次检查编码选项是否一致。帮同事解决这类link2001错误很多都是这两个个问题。

相似回答
大家正在搜