巢狀模板的使用

2021-06-22 08:56:24 字數 841 閱讀 8975

embed templates(嵌入式模版)和derive templates(基模板)

每當你使用乙個普通的類的時候,你也可以在其中使用乙個stl類。它是可以被嵌入的:

class cparam

; 或者將它作為乙個基類:

class cparam : public vector

; stl模版類作為基類時需要謹慎。這需要你適應這種程式設計方式。

模版中的模版

為構建乙個複雜的資料結構,你可以將乙個模板植入另乙個模板中(即「模版巢狀」)。一般最好的方法是在程式前面使用typedef關鍵字來定義乙個在另乙個模板中使用的模版型別。

// 程式:在向量中嵌入向量的演示。

//目的:說明怎樣使用巢狀的stl容器。

#include

#include

using namespace std;

typedef vector vec_int;

int inp[2][2] = , };

// 要放入模板中的2x2的正則陣列

int main(int argc, char* argv)

cout << endl;

} return 0;

} // 輸出:

// 1 1

// 2 0

雖然在初始化時很麻煩,一旦你將資料填如向量中,你就實現了乙個變長的可擴充的二維陣列(大小可擴充直到使用完記憶體)。根據實際需要,可以使用各種容器的巢狀組合。

總結 stl是有用的,但是使用過程中的困難和麻煩是再所難免的。就像中國人所說的:「如果你掌握了它,便猶如虎添翼。」 0

給主人留下些什麼吧!~~

09模板巢狀

1.模板巢狀 2.全域性模板資料夾 3.模板設定檔案建議 在整個mysite專案根目錄下的templates資料夾中建立blog資料夾,接著將blog detail.html blog list.html blog with type.html這三個檔案放到blog資料夾下。然後開啟blog資料夾下...

巢狀從屬模板型別

今天在看spdlog的原始碼的時候,發現了乙個重要的知識點 巢狀從屬模板型別,示例 如下 struct synchronous factory templateauto rotating logger mt 中的create函式就屬於模板從屬型別,因為它是模板類性factory 裡面的模板函式,此時...

django模板之迴圈巢狀

class friendlinkcategory models.model id models.autofield primary key true name models.charfield u 分類名稱 max length 50 def unicode self return self.nam...