C++ 为我的链表实现迭代器类。使用的关键字是什么?
我认为迭代器类需要在类的顶部具有以下标记,这是相对较新的:C++ 为我的链表实现迭代器类。使用的关键字是什么?,c++,c++11,iterator,C++,C++11,Iterator,我认为迭代器类需要在类的顶部具有以下标记,这是相对较新的: using iterator_category = std::bidirectional_iterator_tag; using value_type = T; using difference_type = int; using pointer = T*; using reference = T&; 为什么这些是必要的,他们在幕后做什么?(如果有的话)使用关键字的在C++11中是新的 在本例中,它被用作typedef的替代品
using iterator_category = std::bidirectional_iterator_tag;
using value_type = T;
using difference_type = int;
using pointer = T*;
using reference = T&;
为什么这些是必要的,他们在幕后做什么?(如果有的话)使用关键字的
在C++11中是新的
在本例中,它被用作typedef
的替代品
而不是写:
typedef T value_type;
您可以编写以下内容以获得相同的结果:
using value_type = T;
有关更多信息,请参阅。不,这不是什么新鲜事。。。它们是用来帮助生成无bug代码的别名。这可能已经得到了回答。