Всегда удостоверяйтесь свои ОБНОВЛЕНИЯ, и УДАЛЯЕТ, имеют надлежащий оператор Where.
Это означает, что всякий раз, когда вы создаете SetInt
, вы фактически создаете объект set
.
] Например, он делает следующие две части кода эквивалентными:
SetInt somevar;
и
set<int, less<int> > somevar;
Вы можете просто использовать SetInt
после typedef
, как если бы вы использовали set
. Конечно, typedef
учитывает область действия.
Typedef в C / C ++ используется для определения определенного введите другое имя, которое вы можете использовать.
В фрагменте кода set
- это тип данных, которому вы хотите присвоить другое имя (псевдоним, если хотите). и это имя SetInt
Основная цель использования typedef - упростить понимание кода с точки зрения программиста. Вместо того, чтобы всегда использовать сложный и длинный тип данных (в вашем случае я предполагаю, что это объект шаблона),
Он создает псевдоним для типа с именем SetInt
, что эквивалентно to set
.
По поводу вашего вопроса о less, который относится к std :: less
, компаратору, который установил
будет использовать для сортировки ваших объектов.
Код означает, что вы даете псевдоним или имя (SetInt) объекту
set<int, less<int>>
... т.е. вместо того, чтобы всегда вызывать объект как
set<int, less<int>>
, вы можете просто дать SetInt в качестве имени и называть объект .... как
int i;
например:
SetInt setinteger;
Из Википедии :
typedef
- ключевое слово в языках программирования C и C ++. Он используется для присвоения типу данных нового имени. Цель состоит в том, чтобы упростить программистам понимание исходного кода.
В данном конкретном случае он делает SetInt
именем типа, чтобы вы могли объявить переменную как:
SetInt myInts;