通常我们可以使用 vector 数组访问器来访问元素和修改元素,为什么我们需要指针?
http://msdn.microsoft.com/en-us/library/7e4tx21z(VS.71).aspx
最佳答案
std::vector
中名为 pointer
的便利性 typedef
的存在与无数其他 的存在没有区别typedef
像 value_type
, reference
, allocator_type
, size_type
... 你可以找到完整的列表 here .这些别名在通用设置中非常有用。假设您正在编写一个接受某些容器的通用函数,并希望创建一个 T*
类型的实例,其中容器包含 T
类型的对象。对于 std::vector
(通用类型 V
,例如)特化(也可能适用于一堆其他 STL 容器),您可以将此类型作为 typename V::value_type *
或更简单的 typename V::pointer
。
关于c++ - 为什么我们需要使用 std::vector::pointer 来访问元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27978493/