2

学校の課題用にリストクラスを「リメイク」しようとしています。ただし、イニシャライザ リスト コンストラクタを機能させる方法については手がかりがありません。私がこれまでに持っているもの:

リストノード

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

List.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 を試しましたが、セグメンテーション違反が発生するだけです。

誰が何をすべきか知っていますか?

4

1 に答える 1

2

このページによると、古典的な begin/end で initializer_list を反復処理できます

于 2013-09-26T14:45:12.210 に答える