模板化类的赋值操作符
Assignment-Operator for templated class
本文关键字:赋值操作符 更新时间:2023-10-16
为了澄清,我引用了James McNellis在帖子"模板赋值操作符重载之谜"中的回答:
仍然生成隐式声明的复制赋值操作符,声明如下:
Wrapper& operator=(const Wrapper&);
现在我有一个类似的类,并且想知道这个操作符的定义应该是什么样子的。
这是用于召回的类:
template<typename T>
struct Wrapper;
现在是什么校正匹配:
template<typename T>
Wrapper& Wrapper<T>::operator=(const Wrapper&)
或
Wrapper& Wrapper::operator=(const Wrapper&)
?
还是一样的?
This
template<typename T>
Wrapper& Wrapper<T>::operator=(const Wrapper&)
其实就是
的简写template<typename T>
Wrapper<T>& Wrapper<T>::operator=(const Wrapper<T>&)
另一个版本将应用于一个名为Wrapper
的非模板类,它对你的模板没有影响。
相关文章:
- c++中的重载赋值操作符
- c++类继承和赋值操作符
- 带引用类成员的赋值操作符
- 复制构造函数,赋值操作符重载
- c++派生类赋值操作符
- 通过调用Move赋值操作符实现Move构造函数
- 带有映射的赋值操作符
- 单参数构造函数和赋值操作符
- 如何从复制赋值操作符调用复制构造函数
- c++复制构造函数,重载赋值操作符,方法get()
- 用于具有const数据成员的类的move和右值赋值操作符
- 类赋值操作符和复制构造函数
- 赋值操作符重载
- 影响正确性的move构造函数/赋值操作符示例
- 当类是子类时重载赋值操作符
- 如果没有定义Move语义(Move构造函数和Move赋值操作符),编译器是否默认优化
- 在类赋值操作符函数中,为什么必须返回*this ?
- 模板类的重载赋值操作符
- 使用重载赋值操作符
- 类和向量的重载赋值操作符