Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 模板化类的赋值运算符_C++_Templates_Operator Overloading - Fatal编程技术网

C++ 模板化类的赋值运算符

C++ 模板化类的赋值运算符,c++,templates,operator-overloading,C++,Templates,Operator Overloading,为了澄清,我引用了James McNellis的回答: 仍将生成隐式声明的复制赋值运算符,其声明如下: 现在我有一个类似的类,我想知道这个操作符的定义应该是什么样子 以下是召回课程: template<typename T> struct Wrapper; ? 还是这一模一样?这 template<typename T> Wrapper& Wrapper<T>::operator=(const Wrapper&) 这其实只是一个简写 tem

为了澄清,我引用了James McNellis的回答:

仍将生成隐式声明的复制赋值运算符,其声明如下:

现在我有一个类似的类,我想知道这个操作符的定义应该是什么样子

以下是召回课程:

template<typename T>
struct Wrapper;
?

还是这一模一样?

template<typename T>
Wrapper& Wrapper<T>::operator=(const Wrapper&)
这其实只是一个简写

template<typename T>
Wrapper<T>& Wrapper<T>::operator=(const Wrapper<T>&)
另一个版本将应用于名为Wrapper的非模板类,它对模板没有影响

Wrapper& Wrapper::operator=(const Wrapper&)
template<typename T>
Wrapper& Wrapper<T>::operator=(const Wrapper&)
template<typename T>
Wrapper<T>& Wrapper<T>::operator=(const Wrapper<T>&)