如何编写Template类的复制构造函数

2024-05-12

如何为模板类编写复制构造函数。因此,如果模板参数是另一个用户定义的类,它的复制构造函数也会被调用。

下面是我的课

template <typename _TyV>
class Vertex {
public:
    Vertex(_TyV in) :   m_Label(in){ }
    ~Vertex() { }
    bool operator < ( const Vertex & right) const {
        return m_Label < right.m_Label;
    }

    bool operator == ( const Vertex & right ) const {
        return m_Label == right.m_Label;
    }

    friend std::ostream& operator << (std::ostream& os, const Vertex& vertex) {
        return os << vertex.m_Label;    
    }

    _TyV getLabel() { return m_Label;}
private:
    _TyV m_Label;
public:
    VertexColor m_Color;
protected:
};

a) 根本不需要,只依赖编译器提供的默认值;或 b) 通过调用成员的复制构造函数:

template <typename T> struct Foo
{
  T var;
  Foo(const Foo & rhs) : var(rhs.var) { }
};

当然,重点是编译器提供的默认复制构造函数执行完全相同的操作:它一一调用每个成员的复制构造函数。因此,对于由聪明的成员对象组成的类,默认的复制构造函数应该是最好的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何编写Template类的复制构造函数 的相关文章

随机推荐

  • 使用 LIKE 和撇号的 Mysql 查询问题

    所以我有一个有趣的问题 我从未遇到过 并且似乎找不到太多有关纠正该问题的信息 我有一个庞大的数据库 里面有大量的数据 相当于 10 年的数据 并试图对其进行搜索 现在搜索功能运行良好 但最近有人让我注意到一个 错误 如果你愿意的话 我尝试对
  • Android SSL 无对等证书

    我有一个例外 没有同行证书 当我询问谷歌时 我得到了解决方案 我信任所有证书 但这个问题的答案是 它是不安全的 所以我给班级打电话 HostnameVerifier hostnameVerifier org apache http conn
  • Java:获取当前正在执行的Method对应的对象

    将当前正在执行的方法作为 Method 对象获取的最优雅的方法是什么 我的第一个明显的方法是在辅助类中使用静态方法 该方法将加载当前线程堆栈 获取正确的堆栈跟踪元素 并根据其信息构造 Method 元素 有没有更优雅的方法来实现这一目标 这
  • mlflow 如何使用自定义转换器保存 sklearn 管道?

    我正在尝试使用 mlflow 保存 sklearn 机器学习模型 这是一个包含我定义的自定义转换器的管道 并将其加载到另一个项目中 我的自定义转换器继承自 BaseEstimator 和 TransformerMixin 假设我有 2 个项
  • 读取文件并获取 key=value 而不使用 java.util.Properties

    我正在构建一个 RMI 游戏 客户端将加载一个包含一些键和值的文件 这些键和值将用于多个不同的对象 它是一个保存游戏文件 但我不能为此使用 java util Properties 它符合规范 我必须读取整个文件并忽略注释行和与某些类不相关
  • 向量化 for 循环并返回 x 天的最高价和最低价

    Overview 对于数据帧的每一行 我想计算 x 天的最高价和最低价 x 天的高点高于前 x 天 x 天的低点低于前 x 天 for 循环在此有更详细的解释post https stackoverflow com questions 70
  • 具有相同容器端口的多个 docker 容器连接到同一网络

    我有一个依赖于多个 Docker 容器的应用程序 我使用 docker compose 以便所有这些都位于同一网络中以进行容器间通信 但是 我的两个容器正在各自容器内侦听相同的端口 8080 但是映射到主机上的不同端口 8072 8073
  • CALayerframe.size不等于bounds.size

    我在CALayer上遇到了一些奇怪的事情 最后发现CALayer的frame size不等于它的bounds size 这是我无法理解的 我知道frame是在super的坐标系中 bounds是它自己的坐标 并且通常的情况是frame or
  • 在严格模式下,一个对象字面量不能有多个同名属性

    这是我的代码 import combineReducers from redux import postReducers from postReducers import stationsReducer from TrackCircuitS
  • 查找预编译头时使用 #include 跳过 - 查找预编译头时出现意外的文件结尾

    我有一些代码 但无法编译 我无法进一步讨论这个示例 因为每次我尝试调试时都会出现此错误 注意 我是Java程序员 VS中的这条消息很奇怪 我找不到问题所在 有人可以解释一下这个错误是什么意思吗 这是代码 zadatak cpp zadata
  • 为什么编译器不允许在 catch 块内使用await

    假设我有一个异步方法 public async Task Do await Task Delay 1000 另一种方法是尝试调用Do里面的方法catch block public async Task DoMore try catch Ex
  • 使用 xhr-mock 测试 AJAX 函数失败

    我正在尝试从我的中测试以下功能network js export function post data return new Promise function resolve reject need to log to the root v
  • PowerShell Group-Object 不再将对象拆分为固定大小的集合

    我在一个脚本中写了这个 我认为该脚本运行良好 但似乎已停止工作 testList object 1 object 2 object 3 object 4 object 5 counter 0 maxSize 2 groupedList te
  • 添加链接以在 Google 文档中打开本地文件

    我已经制作了有关我的工具的指南 或类似教程的内容 以与我的公司分享 我使用 Google 文档来做到这一点 并且我想添加打开视频指南的链接 我想知道一种在文档中添加链接的方法 我所做的如下 工作表 或您的文档 中的链接仅响应互联网协议 例如
  • 如何使 Flexbox 项目大小相同

    我想使用具有一些宽度相同的项目的 Flexbox 我注意到 Flexbox 均匀地分配空间 而不是空间本身 例如 header display flex item flex grow 1 text align center border 1
  • 数据契约序列化器 - 如何省略集合的外部元素

    如何序列化没有外部元素的列表使用数据契约序列化器 我正在使用 Net 3 5 我有一个类 其中包含一个列表 除其他外 我希望在没有外部元素的情况下序列化该列表 以符合相关的 XSD DataContract Name MyClass pub
  • Django 使用用户/IP 进行日志记录

    我正在使用 logging 模块来记录大量消息 我想将 用户 request user 添加到日志中 但是 虽然它在视图函数中可用 但我不想将其传递给所有助手 有谁知道这个方法吗 我正在考虑以某种方式跟踪跟踪 直到找到参数中带有 请求 的函
  • 函数作为参数(带参数)——JavaScript

    如果我有一些 OO javascript 看起来像这样 function someFunction a b c do something with a b and c function theLoader loadFunction some
  • nginx位置正则表达式,匹配多次

    如何在 nginx 位置正则表达式中多次匹配 看来 x x 语法永远不起作用 例如 location abc w 1 3 从来不工作 您必须引用包含以下内容的位置 or 人物 location abc w 1 3 否则 nginx 将其解析
  • 如何编写Template类的复制构造函数

    如何为模板类编写复制构造函数 因此 如果模板参数是另一个用户定义的类 它的复制构造函数也会被调用 下面是我的课 template