c++模板封装结构体
时间: 2024-01-17 13:03:31 浏览: 26
以下是一个使用C++模板封装结构体的示例代码:
```cpp
#include <iostream>
using namespace std;
template <typename T>
struct MyStruct {
T data1;
T data2;
void printData() {
cout << "Data 1: " << data1 << endl;
cout << "Data 2: " << data2 << endl;
}
};
int main() {
MyStruct<int> myIntStruct;
myIntStruct.data1 = 10;
myIntStruct.data2 = 20;
myIntStruct.printData();
MyStruct<double> myDoubleStruct;
myDoubleStruct.data1 = 3.14;
myDoubleStruct.data2 = 6.28;
myDoubleStruct.printData();
return 0;
}
```
在这个示例中,我们定义了一个结构体`MyStruct`,它有两个成员变量`data1`和`data2`,以及一个成员函数`printData`,用于打印这两个成员变量的值。我们使用模板来定义这个结构体,这样我们就可以在不同的数据类型上使用它。
在`main`函数中,我们首先定义了一个`MyStruct<int>`类型的变量`myIntStruct`,并给它的两个成员变量赋值。然后我们调用了`printData`函数,打印出了这两个成员变量的值。接着我们定义了一个`MyStruct<double>`类型的变量`myDoubleStruct`,并重复了相同的操作。