ayu*_*.ab 6 c++ language-lawyer c++20
有人可以解释一下C++ 标准草案中iterator.concepts.general#1中的这一行的含义吗:
\n\n\n对于 type
\nI,如果命名从主模板生成的专业化,则ITER_\xc2\xadTRAITS(I)表示该类型。否则,表示.Iiterator_\xc2\xadtraits<I>ITER_\xc2\xadTRAITS(I)iterator_\xc2\xadtraits<I>
主iterator_traits<I>模板将填写类似value_type和reference的相应成员的成员I。如果您的迭代器类型没有这些成员(例如,所有指针类型),您可以专门std::iterator_traits<your_iterator_type>提供这些成员,并在特征类中提供它们。
概念元功能ITER_TRAITS(I)代表了这一点。iterator_traits如果迭代器类型没有专门化I,那么它会从自身获取成员I。如果它是专门的,那么它会从 获取它们iterator_traits<I>。
| 归档时间: |
|
| 查看次数: |
172 次 |
| 最近记录: |