typedef set<int, less<int> > SetInt;
请解释此代码的作用。
答案 0 :(得分:29)
这意味着无论何时创建SetInt
,您实际上都在创建set<int, less<int> >
的对象。
例如,它使以下两段代码等效:
SetInt somevar;
和
set<int, less<int> > somevar;
答案 1 :(得分:5)
来自Wikipedia:
typedef
是C和C ++编程语言中的关键字。它用于为数据类型指定新名称。目的是让程序员更容易理解源代码。
在这种特殊情况下,它使SetInt
成为类型名称,因此您可以将变量声明为:
SetInt myInts;
答案 2 :(得分:3)
您可以在SetInt
之后使用typedef
,就像使用set<int, less<int>>
一样。当然,typedef
可以了解范围。
答案 3 :(得分:0)
答案 4 :(得分:0)
C / C ++中的typedef用于为某个数据类型提供另一个名称供您使用。
在您的代码段中,set<int, less<int> >
是您要为其提供另一个名称(如果您愿意为别名)的数据类型,该名称为SetInt
使用typedef的主要目的是从程序员的角度简化对代码的理解。而不是总是必须使用复杂的长数据类型(在你的情况下,我假设它是一个模板对象),你可以选择一个相当简单的名称。
答案 5 :(得分:0)
代码表示您为
指定了别名或名称(SetInt)set<int, less<int>>
...对象即。而不是总是将对象称为
set<int, less<int>>
您可以将SetInt作为名称并调用对象....就像
一样int i;
例如:
SetInt setinteger;