我想要一个 vector ,其元素的类型为 vector::size_type
但是,您不能声明:
vector<vector::size_type> aVec;
因为 size_type 是模板本身的一部分,所以你必须使用类型本身,我需要这样的东西:
vector<vector<T>::size_type> aVec;
但是 T 应该是什么?这真的是一个循环问题。 :)
如果 vector 刚刚使用 size_t 作为其大小类型(但没有针对 size_type 的特殊 typedef,它可能会根据 vector 所持有的类型而有所不同),我可以这样做:
vector<size_t> aVec;
但是,事实并非如此。我怀疑它被允许改变是有正当理由的,但是通过将它作为模板化 vector 类的一部分而不是在它之外,这使得这变得困难。
想法?
最佳答案
std::vector<>::size_type
是 std::size_t
类型的静态成员类型所以你应该安全 std::vector<std::size_t> vec
关于c++ - 如何声明 vector::size_type 的 vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36483817/