학교 과제의 목록 클래스를 "다시 제작"하려고합니다. 그러나 initializer 목록 생성자를 작동시키는 방법에 대한 단서가 없습니다. 내가 지금까지 가지고 :사용자 정의 목록 클래스의 초기화 프로그램 목록 생성자
ListNodes List.h에서
struct ListNode
{
ListNode(int value, ListNode* tail = nullptr) : data(value), next(tail) {}
int data;
ListNode* next;
};
List(std::initializer_list<int>);
나는 거라고
List::List(std::initializer_list<int> il)
{
head_ = copy(il, il.size()); //some form of recursive copy-function
}
List.cc에서 복사 기능을 수행하는 방법을 알고 있습니다. 나는 std :: copy를 시도했지만 segfault를 제공한다.
누구든지 무엇을 해야할지 알고 계십니까?
/시작 고전과 initializer_list을 축복하는 반복 할 수, 당신은 insert''호출해야합니다. 또한,'insert' 함수를 작성해야합니다. –
예.하지만이 할당의 일부는 재귀 적으로 처리 할 수있는 모든 항목을 재귀 적으로 처리해야한다는 것입니다. 재귀 적으로 삽입하는 방법에 대한 조언이 있습니까? –