溫馨提示×

C++類模板如何定義成員函數(shù)

c++
小樊
81
2024-11-09 01:14:28
欄目: 編程語言

在C++中,類模板的成員函數(shù)定義與常規(guī)類的成員函數(shù)定義非常相似。首先,在類模板聲明中,你需要為成員函數(shù)提供模板參數(shù)列表。然后,在類模板定義中,你可以像常規(guī)類一樣定義成員函數(shù)。這里有一個簡單的例子來說明如何定義類模板的成員函數(shù):

#include <iostream>

// 類模板聲明
template <typename T>
class MyClass {
public:
    // 成員函數(shù)聲明,包含模板參數(shù)列表
    void printType();
};

// 類模板定義
template <typename T>
void MyClass<T>::printType() {
    std::cout << "The type of the stored value is: " << typeid(T).name() << std::endl;
}

int main() {
    MyClass<int> intObj; // 使用int類型實例化類模板
    intObj.printType();   // 輸出:The type of the stored value is: i

    MyClass<std::string> strObj; // 使用std::string類型實例化類模板
    strObj.printType();   // 輸出:The type of the stored value is: NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE

    return 0;
}

在這個例子中,我們定義了一個名為MyClass的類模板,它接受一個類型參數(shù)T。我們?yōu)檫@個類模板定義了一個成員函數(shù)printType(),它打印存儲值的類型。在main()函數(shù)中,我們使用intstd::string類型實例化了MyClass類模板,并調用了printType()成員函數(shù)。

0