阿剛程式設計遇到的小問題集合 以後回顧用

2021-10-04 19:14:07 字數 1096 閱讀 9382

類模板的宣告與實現

c++模板類是不能定義在原始檔的。

1.這是不允許的,因為模板類的成員函式的定義,是一種不完整的定義.

2.由於編譯器不知道模板引數的具體型別,無法為其成員函式生成**.

3.編譯器在成員函式的呼叫處,才最終知道如何生成**.

總之,模板類的成員函式的定義不能像普通類的成員函式一樣,定義在源**中,而只能定義在標頭檔案中.

一下例子將會出現錯誤:

//檔案compare.h

#ifndef _compare_h

#define _compare_h

template

class compare

;#endif

//檔案compare.cpp

#include"compare.h"

template

compare::compare(t a,t b)

template

compare::~compare(void)

template

t compare::max()

template

t compare::min()

//檔案main.cpp   

#include

using namespace std;

#include"compare.h"

int main()

;上述的模板類,裡面巢狀定義了模板函式,怎麼去實現呢?

template

template //這裡時我當時疑惑的地方

type_1 myclass::add(const type_1 lva, const type_2 rva)

當時自己寫的方式為template,這顯然沒有理解模板引數的定義,模板引數定義後,其作用域範圍是接下來的類或者函式。然後模板可以巢狀定義。

再來乙個更複雜的例子:

template

class myclass

template

template

class myclass::myclass_2

};建議別這麼搞,要是型別匹配不上,那你真的腦殼痛~

MFC 在程式設計當中遇到的小問題

1 對話方塊不能在自己的執行緒中直接關閉自己,但是通過發訊息,定時器等手段可以間接的實現 不知道的什麼原 理 主要是在除錯的時候觸發 enddialog 中斷 2 就是主視窗重新整理子視窗的問題,子視窗自己的onpaint 無效,由主視窗負責重新整理時,可以設定屬性 ws clipchildren,...

Python 程式設計中遇到的幾個小問題

1.引入同級目錄下的 py中的sss類 直接在要引入的py檔案中 import 或者 from import sss 2.arg 在python的函式用 def fun args join args print arg arg是乙個tuple type args 錯誤,一次給type傳遞了3個引數 ...

整合支付寶SDK遇到的小問題集合

1 問題 objc class cmmotionmanager objc class ref in alipaysdk 解決方法 遇到這樣的錯誤,是因為少了coremotion.framework build phases link binary with libraries 下新增庫 coremo...