c++-VS2013,C++,error LNK2019和LNK1120

问题描述

VS2013,C++,error LNK2019和LNK1120

output:1>------ Build started: Project: chapter5 使用序列式容器并分析字符串, Configuration: Debug Win32 ------
1> Source.cpp
1>Source.obj : error LNK2019: unresolved external symbol "class std::vector,class std::allocator >,class std::allocator,class std::allocator > > > __cdecl split(class std::basic_string,class std::allocator > &)" (?split@@YA?AV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z) referenced in function _main
1>C:UsersccDesktopAccelerated C++exercisechapter5 使用序列式容器并分析字符串Debugchapter5 使用序列式容器并分析字符串.exe : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
split.cpp:

//使用索引实现的split函数
#include
#include
#include
#include

using namespace std;

vector split(const string &s)
{
vector ret;
typedef string::size_type string_size;
string_size i = 0;

while (i != s.size())
{
    while (i != s.size() && isspace(s[i]))
        ++i;

    string_size j = i;
    while (j != s.size() && !isspace(s[j]))
        ++j;

    if (i != j)
    {
        ret.push_back(s.substr(i, j - i));
        i = j;
    }
}
return ret;

}

split.h:

#ifndef GUARD_split_h
#define GUARD_split_h

#include
#include
std::vectorstd::string split(std::string &s);

#endif

Source.cpp

#include "split.h"
#include
#include
#include
#include

using namespace std;

int main()
{
string s;

while (getline(cin, s))
{
    vector<string> v = split(s);

    for (vector<string>::size_type i = 0; i != v.size(); ++i)
        cout << v[i] << endl;
}
return 0;

}

我用的是空项目建立的,搞不懂是为什么出问题了,新手啊

解决方案

cpp中实现的时候

 vector split(string &s)
 {
 }

解决方案二:

split函数没有定义。

解决方案三:

split函数没有定义。

解决方案四:

这个比较明显是你没有链接正确的stdlib.简单说,你用了vector但是系统不知道你是否include了相关header file,以及相关的lib没有链接进来

时间: 2024-12-27 06:42:36

c++-VS2013,C++,error LNK2019和LNK1120的相关文章

c++-VS2013 C++ error LNK2019: 无法解析的外部符号

问题描述 VS2013 C++ error LNK2019: 无法解析的外部符号 #include #include #include using namespace std; #include template class CMatrix { T * * Mat; int nRow; int nCol; public: CMatrix(); CMatrix(int row, int col); CMatrix(int row, int col, int k); void Show(); voi

lnk1120-vs2010运行程序报错:error LNK2019: 无法解析的外部符号

问题描述 vs2010运行程序报错:error LNK2019: 无法解析的外部符号 如题,我在vs2010环境下做C++练习题时出现该错误.程序代码如下: //array.h#ifndef ARRAY_H#define ARRAY_Htemplate<typename T>class Array{public: Array(int n);//数组首地址不用指定,待会分配 Array(Array &a); ~Array(); T getAt(int i);//返回第i个数组元素 voi

VS2010 error LNK2019: 无法解析的外部符号

问题描述 VS2010 error LNK2019: 无法解析的外部符号 程序如下: #include #include #include #include #include #include #include #include #include #include "cuda_runtime.h" #include "device_launch_parameters.h" #include "cuda_runtime.h" #include #i

error LNK2019: 无法解析的外部符号 _deflate

我的环境为: Win764 + VS2005 + zlib1.2.8 zlib1.2.8我使用VS2010来编译. ------------------------------------------------------------------------------------------------- 我导入zlib库的代码如下: #include "zlib128/zlib.h"// #pragma comment(lib, "zlib128/zlibwapi.li

graph-matlab进行mex时出现 error LNK2019: 无法解析的外部符号……

问题描述 matlab进行mex时出现 error LNK2019: 无法解析的外部符号-- **具体问题是:我想把现有的.cpp文件转成.mexw32的文件,代码没有出现错误,因为前辈曾转出过64位的.** 而且配置应该没问题,因为mex代码中其他.cpp文件是可以做出来的,唯独这个出现以下错误: mex mex_maxflow.cpp 正在创建库 C:DOCUME~1ADMINI~1LOCALS~1TEMPMEX_4W~1templib.x 和对象 C:DOCUME~1ADMINI~1LOC

linkerror-1&amp;amp;gt;Generic.obj : error LNK2019: 无法解析的外部符号

问题描述 1>Generic.obj : error LNK2019: 无法解析的外部符号 //Generic.cpp #include // 每一个 Windows 程序都需要包含此档 #include "resource.h" // 內含各个 resource IDs #include "Generic.h" // 本程序之含入档 HINSTANCE _hInst; // Instance handle HWND _hWnd; char _szAppNam

关于c++ error LNK2019: unresolved external symbol 问题

问题描述 关于c++ error LNK2019: unresolved external symbol 问题 我运行了一个程序,报出如下错:Error 1 error LNK2019: unresolved external symbol ""public: __thiscall CircList::CircList(int)"" (??0?$CircList@N@@QAE@H@Z) referenced in function _wmain Error 2 er

c语言提示error LNK2019: 无法解析的外部符号

问题描述 c语言提示error LNK2019: 无法解析的外部符号 在c语言中实现对对象的管理 前面的代码是这样的 #include #include #include "ObjMgt.h" typedef struct key{ unsigned int key1; unsigned int key2; unsigned int key3; struct key * next; }keyall ; /*****************************************

mfc-新手MFC求助,关于error LNK2019的问题。

问题描述 新手MFC求助,关于error LNK2019的问题. 1>MFCApplication2Dlg.obj : error LNK2019: 无法解析的外部符号 "public: static long __stdcall CMFCApplication2Dlg::JournalRecordProc(int,unsigned int,long)" (?JournalRecordProc@CMFCApplication2Dlg@@SGJHIJ@Z),该符号在函数 "