自定义列表类的初始值设定项列表构造函数

initializer list constructor for custom list class

本文关键字:列表 构造函数 自定义      更新时间:2023-10-16

我正在尝试"重新制作"学校作业的列表类。但是,我不知道如何让初始值设定项列表构造函数工作。到目前为止,我拥有的:

列表节点

struct ListNode
{
   ListNode(int value, ListNode* tail = nullptr) : data(value), next(tail) {}
   int        data;
   ListNode* next;
};

在列表.h 中

List(std::initializer_list<int>);

在 List.cc

List::List(std::initializer_list<int> il)
{
  head_ = copy(il, il.size()); //some form of recursive copy-function
}

我不知道如何继续复制功能。我已经尝试过std::copy,但这只会给我一个段错误。

有人知道该怎么做吗?

根据此页面,您可以使用经典的开始/结束循环访问initializer_list