C++中模板嵌套定义的例子
时间: 2023-11-28 19:49:16 浏览: 109
函数的嵌套调用-谭浩强c++简单详细版
以下是一个简单的模板嵌套定义的示例:
```cpp
template <typename T>
class Outer {
public:
template <typename U>
class Inner {
public:
void display(T t, U u) {
std::cout << "Outer type: " << typeid(t).name() << std::endl;
std::cout << "Inner type: " << typeid(u).name() << std::endl;
}
};
};
int main() {
Outer<int>::Inner<double> obj;
obj.display(10, 3.14);
return 0;
}
```
在这个例子中,`Outer` 类中定义了一个嵌套的 `Inner` 类。`Inner` 类可以使用 `T` 和 `U` 两个模板参数,其中 `T` 是 `Outer` 类的模板参数,而 `U` 是 `Inner` 类自己的模板参数。在 `display` 函数中,我们可以访问 `T` 和 `U` 参数,并将它们打印出来。在 `main` 函数中,我们实例化了 `Outer<int>::Inner<double>` 类型的对象,并调用了它的 `display` 函数。
阅读全文