gpt4 book ai didi

c++ - 模板类的 typedef 声明

转载 作者:太空狗 更新时间:2023-10-29 20:31:52 27 4
gpt4 key购买 nike

例如,从元编程的角度来看,两者之间是否存在差异?声明?

template<typename T>
struct matrix {
typedef matrix self_type; // or
typedef matrix<T> self_type;
};

谢谢

最佳答案

在这种特殊情况下(在类模板内),matrixmatrix<T> 的简写.当您整天编写大量毛茸茸的模板并试图将所有内容都放入 80 列时,欢迎使用速记。

请注意,您还可以缩写方法参数:

template <typename T>
struct matrix
{
typedef matrix my_type;
matrix(); // constructor is abbreviated too
matrix& operator=(matrix);
};

// Method argument types can be abbreviated too
// but not result types.
template <typename T>
matrix<T>& matrix<T>::operator=(matrix m)
{
// ...
}

关于c++ - 模板类的 typedef 声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3293796/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com