青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 224  文章 - 41  trackbacks - 0
<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

享受編程

常用鏈接

留言簿(11)

隨筆分類(159)

隨筆檔案(224)

文章分類(2)

文章檔案(4)

經典c++博客

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

原文:http://lnkm.2006.blog.163.com/blog/static/31474774200843181419322/

      一直寫程序都不習慣使用類,有幾次使用類分離都出現連接錯誤,苦苦找不到原因,在Baidu海搜還是一無所獲,最近做數據結構實驗報告又碰到這個錯誤,搜了很久,并配合課本的例子,終于找到了錯誤的原因。

1、當類模板的定義及實現分離(即寫在不同文件中)時,在其他文件中包含類模板的定義必須包含其類實現文件(即.cpp文件),而不能包含類定義文件(即.h文件),否則將收到“error LNK2001”錯誤。

2、若是一般的類(即不是模板類),在其他文件包含則必須包含頭文件(即.h文件,類聲明文件),而不能包含源文件(即.cpp文件,類實現文件),否則將收到“error LNK2005”錯誤。

如:

///test.h文件

#ifndef HH

#define HH

class CTest

{

public:

CTest();

~CTest();

int get();

void set(int d);

private:

int num;

};

#endif

///test.cpp文件

#include"lll.h"

CTest::CTest()

{

};

CTest::~CTest()

{

};

int CTest::get()

{

return num;

}

void CTest::set(int d)

{

num=d;

}

///main文件

#include"test.cpp"         //這里應該為#include"test.h"

#include<iostream>

using namespace std;

int main()

{

CTest tt;

int n;

cin>>n;

tt.set(n);

cout<<tt.get()<<endl;

return 0;

}

以上程序將收到如下錯誤:

main.obj : error LNK2005: "public: __thiscall CTest::CTest(void)" (??0clll@@QAE@XZ) already defined in lll.obj

main.obj : error LNK2005: "public: __thiscall CTest::~CTest(void)" (??1clll@@QAE@XZ) already defined in lll.obj

main.obj : error LNK2005: "public: int __thiscall CTest::get(void)" (?get@clll@@QAEHXZ) already defined in lll.obj

main.obj : error LNK2005: "public: void __thiscall CTest::set(int)" (?set@clll@@QAEXH@Z) already defined in lll.obj

Debug/tt.exe : fatal error LNK1169: one or more multiply defined symbols found

Error executing link.exe.

又如:

///test文件:

#ifndef HH

#define HH

template<class T>

class CTest

{

public:

CTest();

~CTest();

T get();

void set(T d);

private:

T num;

};

#endif

///test.cpp文件

#include"test.h"

template<class T>

CTest<T>::CTest()

{

};

template<class T>

CTest<T>::~CTest()

{

};

template<class T>

T CTest<T>::get()

{

return num;

}

template<class T>

void CTest<T>::set(T d)

{

num=d;

}

///main文件:

#include"test.h"         //這里應改為#include"test.cpp"

#include<iostream>

using namespace std;

int main()

{

CTest<int> tt;

int n;

cin>>n;

tt.set(n);

cout<<tt.get()<<endl;

return 0;

}

如上程序將收到如下錯誤:

main.obj : error LNK2001: unresolved external symbol "public: __thiscall CTest<int>::~CTest<int>(void)" (??1?$clll@H@@QAE@XZ)

main.obj : error LNK2001: unresolved external symbol "public: int __thiscall CTest<int>::get(void)" (?get@?$clll@H@@QAEHXZ)

main.obj : error LNK2001: unresolved external symbol "public: void __thiscall CTest<int>::set(int)" (?set@?$clll@H@@QAEXH@Z)

main.obj : error LNK2001: unresolved external symbol "public: __thiscall CTest<int>::CTest<int>(void)" (??0?$clll@H@@QAE@XZ)

Debug/tt.exe : fatal error LNK1120: 4 unresolved externals

Error executing link.exe.

posted on 2008-11-20 16:34 漂漂 閱讀(1188) 評論(0)  編輯 收藏 引用 所屬分類: visual studio
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区二区三区精品在线观看| 欧美一级视频| 欧美啪啪成人vr| 99这里有精品| 日韩亚洲成人av在线| 欧美日韩免费观看中文| 亚洲综合首页| 亚洲欧美视频在线| 激情久久中文字幕| 亚洲国产高清一区| 欧美巨乳在线| 午夜日韩在线观看| 欧美永久精品| 亚洲乱码国产乱码精品精可以看| 亚洲精品一区二区三区不| 欧美午夜精品| 久久人人97超碰人人澡爱香蕉| 久热re这里精品视频在线6| 一本久道久久综合中文字幕| 亚洲一区综合| 亚洲高清不卡av| 妖精成人www高清在线观看| 国产一区二区成人| 亚洲日本va午夜在线影院| 国产精品久久久久久一区二区三区 | 国产精品亚洲产品| 久久视频在线看| 欧美剧在线免费观看网站| 久久av一区二区三区| 欧美国产日韩在线| 久久国产66| 欧美美女bbbb| 老鸭窝亚洲一区二区三区| 欧美日韩午夜剧场| 免费在线欧美黄色| 国产精品天美传媒入口| 亚洲第一视频| 狠狠色狠狠色综合日日91app| 亚洲人成人一区二区三区| 国产女人aaa级久久久级| 亚洲高清电影| 黄色日韩网站| 午夜精品久久久久久久白皮肤 | 国产精品视频专区| 亚洲国产精品一区二区www| 国产日韩av在线播放| 亚洲精品在线免费| 亚洲激情影院| 久久人人97超碰精品888| 欧美一区二区三区视频免费| 欧美日韩成人综合天天影院| 欧美好骚综合网| 狠狠色综合色区| 午夜精品在线| 亚洲欧美日韩区| 欧美视频福利| 亚洲精品久久久久久下一站| 亚洲人成人77777线观看| 久久人人97超碰国产公开结果 | 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品视频观看| 亚洲午夜伦理| 欧美一级视频免费在线观看| 国产精品久久精品日日| 一区二区三区欧美在线观看| 一区二区精品| 欧美日韩国产一区二区| 亚洲精品在线观| 中日韩视频在线观看| 欧美三级精品| 亚洲欧美影院| 久久男女视频| 亚洲国产一区在线观看| 欧美xxxx在线观看| 亚洲黄色在线| 亚洲一区在线播放| 国产精品日韩欧美| 欧美伊久线香蕉线新在线| 久久夜色精品国产| 最新亚洲视频| 欧美日韩在线第一页| 亚洲综合精品一区二区| 久久久国产一区二区三区| 国内欧美视频一区二区| 麻豆91精品| 亚洲精品欧美专区| 欧美亚洲一区二区三区| 国产综合在线看| 男男成人高潮片免费网站| 日韩亚洲一区二区| 校园春色综合网| 亚洲成在线观看| 欧美了一区在线观看| 亚洲免费综合| 欧美成人在线免费观看| 亚洲一二三四久久| 国内精品一区二区三区| 欧美区日韩区| 久久成人免费日本黄色| 亚洲人成久久| 久久视频在线视频| 一区二区三区回区在观看免费视频| 国产精品日韩在线观看| 老巨人导航500精品| 一区二区三区精密机械公司| 美女视频黄a大片欧美| 亚洲一级在线观看| 亚洲成色www久久网站| 国产精品高清免费在线观看| 老牛嫩草一区二区三区日本| 亚洲色图综合久久| 亚洲成人在线视频播放| 久久av一区二区三区漫画| 亚洲精品欧美专区| 国产一区二区三区黄视频| 欧美日韩免费高清| 麻豆久久精品| 欧美在线免费观看| 一区二区三区免费在线观看| 欧美激情在线观看| 久久久久久一区二区| 亚洲欧美日本日韩| 亚洲精品一区二区网址| 1000精品久久久久久久久| 国产精品视频免费观看| 欧美日韩国产首页| 蜜臀久久99精品久久久久久9| 欧美一区=区| 亚洲欧美激情诱惑| 夜夜嗨av一区二区三区| 最新亚洲视频| 亚洲国产老妈| 欧美激情第五页| 免费国产自线拍一欧美视频| 久久av二区| 欧美一区午夜精品| 亚洲欧美在线另类| 亚洲一区二区在线观看视频| 一本色道久久综合亚洲精品不卡| 亚洲国产日日夜夜| 亚洲国产激情| 亚洲日本中文| 亚洲精品人人| 一本综合久久| 亚洲一区一卡| 亚洲欧美日本国产专区一区| 亚洲免费综合| 欧美在线999| 久久久999| 麻豆成人在线| 欧美激情精品久久久久久| 欧美岛国激情| 亚洲三级免费观看| 亚洲美女一区| 亚洲一区二区三区中文字幕在线| 亚洲欧美日韩精品久久久久| 小黄鸭精品密入口导航| 欧美制服丝袜| 六月婷婷久久| 国产精品igao视频网网址不卡日韩| 国产精品久久久久久久久免费樱桃 | av成人老司机| 亚洲欧美高清| 久久精品国产一区二区三| 久久亚洲综合色| 亚洲国产高清一区二区三区| aa级大片欧美三级| 午夜一区二区三区在线观看| 久久综合中文字幕| 欧美日韩免费网站| 国产日韩精品视频一区| 亚洲国产精品成人va在线观看| 亚洲精品在线观看免费| 午夜视频一区二区| 欧美99在线视频观看| 99av国产精品欲麻豆| 性色一区二区| 欧美精品日韩一区| 国产精品美女久久久久久久| 影音先锋欧美精品| 亚洲一区免费观看| 久久久久久久综合色一本| 亚洲国产精品一区二区久| 亚洲午夜精品一区二区| 久久免费黄色| 国产精品极品美女粉嫩高清在线| 国语对白精品一区二区| 亚洲图片欧美日产| 久久综合亚州| 亚洲永久免费观看| 欧美好骚综合网| 韩国欧美国产1区| 亚洲欧美一级二级三级| 欧美国产综合视频| 亚欧成人精品| 国产精品ⅴa在线观看h| 亚洲国产日韩在线一区模特| 久久精品一本| 亚洲一区二区视频在线观看| 欧美精品一区三区在线观看|