我做了一些指向元素的结构的指针数组。所以在我做了一个表后**我只是将数组中的每个指针设置为空指针,然后再添加元素。现在,当我迭代我不能设置我的end()为空指针,因为然后它将停止迭代在数组中的第一个空指针,它不会找到该空指针后的潜在元素。什么用作end()迭代器C++?
这是我如何创建并填充我的数组中开始与nullptr:
table** = new element*[max_sz+1];
for(size_t i = 0; i <= max_sz; i++) table[i] = nullptr;
我开始迭代器是第一要素*不在表中nullptr。
那我该怎么设置它呢?有任何想法吗 ?
这里没有迭代器...'table ** = new element * [max_sz + 1];' - 无效语法。 – LogicStuff
在非空元素之后的第一个'nullptr'元素看起来很不错。 –
我必须用双指针数组来做:( 什么意思是无效的语法?它工作的很好,迭代器工作正常,直到它到达数组中的第一个nullptr,所以它返回开始和结束之间错误的距离范围 –