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

隨筆 - 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 漂漂 閱讀(1191) 評論(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>
            欧美国产91| 日韩视频在线一区| 久久精品30| 国产麻豆精品视频| 久久久精彩视频| 久久综合影视| 一区二区三区日韩欧美精品| 亚洲清纯自拍| 欧美视频一区二区在线观看 | 欧美理论片在线观看| 夜夜躁日日躁狠狠久久88av| 99亚洲一区二区| 国产日韩精品一区观看| 美国三级日本三级久久99| 欧美大片免费观看在线观看网站推荐| 亚洲国产精品va在线看黑人动漫| 欧美激情视频在线播放 | 欧美一级在线亚洲天堂| 黄色国产精品一区二区三区| 亚洲福利视频专区| 欧美色网一区二区| 老司机成人网| 国产精品xvideos88| 久久久亚洲高清| 欧美国产激情| 校园激情久久| 欧美国产精品日韩| 久久精品免费电影| 欧美老女人xx| 蜜桃久久av| 国产精品久久看| 亚洲国产成人午夜在线一区| 国产精品日韩欧美综合| 亚洲国产欧美久久| 国产一区二区日韩精品| 亚洲精品视频啊美女在线直播| 国产精品美女一区二区| 亚洲电影免费观看高清| 国产日韩久久| 一二三区精品| 亚洲美女啪啪| 久久综合99re88久久爱| 亚洲一区二区在线看| 另类图片国产| 欧美在线一二三| 欧美三级在线视频| 亚洲国产三级在线| 在线观看国产日韩| 午夜久久黄色| 久久xxxx精品视频| 国产精品免费网站在线观看| 亚洲经典三级| 亚洲日韩欧美视频一区| 久久久亚洲综合| 久久久噜噜噜久久狠狠50岁| 国产精品每日更新在线播放网址| 亚洲电影免费在线观看| 伊人久久亚洲美女图片| 午夜精品久久| 久久本道综合色狠狠五月| 国产精品www994| 一本一本久久a久久精品牛牛影视| 亚洲黄色片网站| 久久一综合视频| 欧美+亚洲+精品+三区| 国产欧美日韩在线播放| 亚洲在线网站| 久久不射电影网| 国语自产精品视频在线看一大j8| 亚洲欧美成人网| 欧美中文字幕| 极品少妇一区二区三区精品视频| 香蕉乱码成人久久天堂爱免费| 欧美伊人久久大香线蕉综合69| 国产精品无码专区在线观看| 亚洲欧美日韩成人| 久久激情综合网| 精品成人久久| 欧美.日韩.国产.一区.二区| 亚洲人精品午夜| 亚洲欧美激情四射在线日| 国产精品日韩在线一区| 欧美一区成人| 欧美成人精品一区| 一本色道88久久加勒比精品 | 欧美v日韩v国产v| 亚洲国产专区校园欧美| 亚洲少妇在线| 国产亚洲美州欧州综合国| 久久午夜精品一区二区| 亚洲美女黄色片| 欧美夜福利tv在线| 亚洲国产成人精品久久久国产成人一区| 久久人人爽人人| 亚洲免费av网站| 久久精品国产亚洲aⅴ| 在线视频观看日韩| 欧美调教vk| 久久久久久久久久久一区 | 一本久久a久久精品亚洲| 久久精品欧洲| 99www免费人成精品| 国产美女诱惑一区二区| 免费在线成人| 欧美一区二区啪啪| 亚洲三级视频| 久久综合色播五月| 亚洲天堂视频在线观看| 黄色在线一区| 国产精品视频第一区| 美女图片一区二区| 亚洲免费在线视频| 亚洲精品一区在线观看| 久久网站热最新地址| 一本色道88久久加勒比精品| 狠狠狠色丁香婷婷综合激情| 欧美色道久久88综合亚洲精品| 久久久天天操| 欧美一级黄色录像| 中文国产亚洲喷潮| 亚洲精品看片| 欧美激情自拍| 麻豆成人在线| 久久久999国产| 亚洲一区在线直播| 日韩视频二区| 亚洲精品国精品久久99热| 国产综合色在线| 国产日韩一区二区三区| 国产精品v亚洲精品v日韩精品| 欧美黑人在线播放| 噜噜噜91成人网| 媚黑女一区二区| 久久久亚洲一区| 久久免费高清| 久久乐国产精品| 久久精品欧美| 久久精品国产999大香线蕉| 亚洲欧美日韩中文在线制服| 9色porny自拍视频一区二区| 亚洲啪啪91| 亚洲靠逼com| 日韩视频中文| 国产精品99久久久久久有的能看| 亚洲人屁股眼子交8| 91久久久亚洲精品| 亚洲国产成人精品久久| 亚洲高清视频一区二区| 亚洲电影在线看| 亚洲精品黄网在线观看| 最新亚洲电影| 99在线精品视频| 亚洲在线一区二区| 性高湖久久久久久久久| 久久久www成人免费毛片麻豆| 欧美中文字幕精品| 玖玖综合伊人| 欧美精品一区二区三区一线天视频| 欧美激情乱人伦| 欧美亚洲不卡| 国产主播一区二区三区| 亚洲国产精品成人| 亚洲无亚洲人成网站77777| 亚洲一区二区3| 久久久精品一区二区三区| 久久综合久久美利坚合众国| 欧美国产在线观看| 一区二区高清| 久久不见久久见免费视频1| 久久性天堂网| 国产精品豆花视频| 一区二区视频在线观看| 99在线精品视频在线观看| 亚洲女人天堂av| 女人香蕉久久**毛片精品| 亚洲日本中文字幕区| 亚洲欧美日韩精品久久奇米色影视| 欧美一区成人| 欧美日韩国产a| 一区在线播放视频| 亚洲免费在线电影| 欧美高清在线一区| 午夜精品久久久久| 欧美精品18| 韩国久久久久| 一区二区三区久久久| 久久乐国产精品| 一区二区三区www| 久久久久久免费| 国产精品看片你懂得| 亚洲精品国产精品乱码不99按摩| 亚洲欧洲av一区二区| 欧美国产日韩视频| 午夜精品久久久久久久| 欧美黄色aa电影| 在线观看日韩专区| 久久精品女人| 亚洲在线观看免费视频| 欧美日韩国产123区| 亚洲欧洲日产国产网站|