模板类赋值运算符
Template class assignment operator
本文关键字:赋值运算符 更新时间:2023-10-16
我对一个名为"DynamicArray"的模板类有问题。我遇到的唯一问题是当我定义赋值运算符时。它给了我两个不同的错误
1(它给我的第一个错误是
DynamicArray&说"类模板"DynamicArray"的参数列表正在丢失">
2(第二个错误是
DynamicArray::operator= 说"模板参数列表必须与参数列表匹配">
这是我的程序:
DynamicArray.h
#pragma once
#include <iostream>
using namespace std;
template<typename T>
class DynamicArray
{
public:
DynamicArray();
DynamicArray(const DynamicArray &d);
DynamicArray& operator=(const DynamicArray &d);
~DynamicArray();
};
template<typename T>
DynamicArray<T>::DynamicArray()
{
}
template<typename T>
DynamicArray<T>::DynamicArray(const DynamicArray &d)
{
}
template<typename T>
DynamicArray& DynamicArray<T>::operator=(const DynamicArray &d)
{
}
template<typename T>
DynamicArray<T>::~DynamicArray()
{
}
我看了多个例子,但无法弄清楚为什么我有这个问题。
谁能告诉我我在这里做错了什么?
- 按照 Neil 通过链接将完整的模板放在头文件中,为什么模板只能在头文件中实现?。
operator=
的返回值应DynamicArray<T>&
相关文章:
- 重载Singly Linked List中的赋值运算符
- 使用赋值运算符重载从类中返回jobject
- 标准库类型的赋值运算符的引用限定符
- 复制构造函数、赋值运算符C++
- 标准::变体的赋值运算符
- 移动赋值运算符;尝试引用已删除的函数.我该如何解决这个问题?
- 基类和派生类的多态赋值运算符
- 为用户定义的类正确调用复制构造函数/赋值运算符
- CRTP 中的复制赋值运算符 - gcc vs clang 和 msvc
- 为什么初始化时没有调用重载赋值运算符?
- 赋值运算符重载和自赋值
- C++矢量复制构造函数和赋值运算符是否也复制保留空间?
- Qt PL/SQL - 赋值运算符 - 字符串缓冲区太小
- 对 r 值使用移动赋值运算符时的异常
- 由于没有使用赋值运算符,映射的值是如何初始化的?
- 默认赋值运算符如何在实际 STL 中实现
- 使用赋值运算符复制 std::vector
- C++ 通过自定义赋值运算符隐式转换函数参数
- 赋值运算符的奇怪行为
- C++赋值运算符,我们可以用 copy 替换它吗?