当前位置:  开发笔记 > 编程语言 > 正文

C++中的std :: back_insert_iterator 17

如何解决《C++中的std::back_insert_iterator17》经验,为你挑选了1个好方法。

如前所述, std::back_insert_iterator在C++之前,17继承自std::iteratorC++ 17.这种变化的原因是什么?



1> Pete Becker..:

std::iterator很方便.它提供了一些typedef,使用迭代器的代码很有用.这些天的首选机制是std::iterator_traits,它更灵活.

实际上,迭代器是一个无法继承的指针std::iterator,因此iterator_traits一直是获取这些typedef的方法.在迭代器类型中使用typedef是类,但不是作为指针的迭代器类型,这意味着通用代码不能使用这些成员.拥有它们是非常有用的,它们会消失.


为了明确Pete所说的,`std :: iterator`没有任何数据成员或任何成员函数.它只提供了一些嵌套的typedef.只要typedef中的信息可用(并且`std :: iterator_traits`是获取它的机制),那么迭代器是否实际继承以获取typedef或自己声明它们没有区别.
推荐阅读
牛尾巴2010
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有