vector <int>:: size_type в C ++ - PullRequest
       29

vector <int>:: size_type в C ++

48 голосов
/ 31 января 2011

Что подразумевается под этим оператором C ++?

vector<int>::size_type x;

И что тут за оператором :: использования? Другими словами, как мы читаем это утверждение на английском языке?

Например, для X::x(){...} мы говорим, что x() - это member function из class X.

Ответы [ 3 ]

61 голосов
/ 31 января 2011

size_type - это (статический) тип элемента типа vector<int>.Обычно это typedef для std::size_t, что само по себе обычно составляет typedef для unsigned int или unsigned long long.

23 голосов
/ 31 января 2011

Я бы прочитал это как "объявить x как переменную типа, подходящего для хранения размера вектора". Вектор определяет свой собственный тип для своей длины, и всегда лучше использовать его, если это возможно, вместо «угадывания» и использования int, unsigned int, long, unsigned long или size_t и т. Д. Непосредственно иначе надо было бы сделать.

3 голосов
/ 31 января 2011

вектор-шаблон

, так что тип vector с шаблоном int имеет член typedef с именем size_type. x определяется как переменная этого типа.

...