C++关键字全.docx
- 文档编号:5978704
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:8
- 大小:20.84KB
C++关键字全.docx
《C++关键字全.docx》由会员分享,可在线阅读,更多相关《C++关键字全.docx(8页珍藏版)》请在冰豆网上搜索。
C++关键字全
(1)asm
asm已经被__asm替代了,用于汇编语言嵌入在C/C++程序里编程,从而在某些方面优化代码.虽然用asm关键
字编译时编译器不会报错,但是asm模块的代码是没有意义的.
(2)auto
这个这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量
视为全局变量,而在函数中定义的变量视为局部变量。
这个关键字不怎么多写,因为所有的变量默认就是
auto的。
(3)bad_cast,const_cast,dynamic_cast,reinterpret_cast,static_cast
关于异常处理的,还不是太了解..
(4)bad_typeid
也是用于异常处理的,当typeid操作符的操作数typeid为Null指针时抛出.
(5)bool
不用多说了吧,声明布尔类型的变量或函数.
(6)break
跳出当前循环.Thebreakstatementterminatestheexecutionofthenearestenclosingloopor
conditionalstatementinwhichitappears.
(7)case
switch语句分支.Labelsthatappearafterthecasekeywordcannotalsoappearoutsidea
switchstatement.
(8)catch,throw,try
都是异常处理的语句,Thetry,throw,andcatchstatementsimplementexceptionhandling.
(9)char
声明字符型变量或函数.
(10)class
声明或定义类或者类的对象.Theclasskeyworddeclaresaclasstypeordefinesanobjectofa
classtype.
(11)const
被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
它可以修饰函数的参
数、返回值,甚至函数的定义体。
作用:
1.修饰输入参数
a.对于非内部数据类型的输入参数,应该将“值传递”的方式改为“const引用传递”,目的是提
高效率。
例如将voidFunc(Aa)改为voidFunc(constA&a)。
b.对于内部数据类型的输入参数,不要将“值传递”的方式改为“const引用传递”。
否则既达不
到提高效率的目的,又降低了函数的可理解性。
例如voidFunc(intx)不应该改为voidFunc(constint
&x)。
2.用const修饰函数的返回值
a.如果给以“指针传递”方式的函数返回值加const修饰,那么函数返回值(即指针)的内容不能
被修改,该返回值只能被赋给加const修饰的同类型指针。
如对于:
constchar*GetString(void);
如下语句将出现编译错误:
char*str=GetString();//cannotconvertfrom'constchar*'to'char*';
正确的用法是:
constchar*str=GetString();
b.如果函数返回值采用“值传递方式”,由于函数会把返回值复制到外部临时的存储单元中,加
const修饰没有任何价值。
如不要把函数intGetInt(void)写成constintGetInt(void)。
3.const成员函数的声明中,const关键字只能放在函数声明的尾部,表示该类成员不修改对象.
说明:
consttypem;//修饰m为不可改变
示例:
typedefchar*pStr;//新的类型pStr;
charstring[4]="abc";
constchar*p1=string;
p1++;//正确,上边修饰的是*p1,p1可变
constpStrp2=string;
p2++;//错误,上边修饰的
是p2,p2不可变,*p2可变
同理,const修饰指针时用此原则判断就不会混淆了。
constint*value;//*value不可变,value可变
int*constvalue;//value不可变,*value可变
const(int*)value;//(int*)是一种type,value不可变,*value可变
//逻辑上这样理解,编译不能通过,需要tydefint*NewType;
constint*constvalue;//*value,value都不可变
(12)continue
结束当前循环,开始下一轮循环.Forcestransferofcontroltothecontrollingexpressionofthe
smallestenclosingdo,for,orwhileloop.
(13)default
switch语句中的默认分支.Noneoftheconstantsmatchtheconstantsinthecaselabels;
adefaultlabelispresent.Controlistransferredtothedefaultlabel.
常量的无匹配情况下标签的常量;
adefault标签present.Control转移到默认的标签。
(14)delete
经常用于动态内存分配的语句,Deallocatesablockofmemory.
(15)do
在do-while循环结构中开始循环体.Executesastatementrepeatedlyuntilthespecified
terminationcondition(theexpression)evaluatestozero.
(16)double
声明双精度变量或函数.
(17)else
条件语句否定分支(与if连用).
(18)enum
声明枚举类型.Thenameofeachenumeratoristreatedasaconstantandmustbeuniquewithin
thescopewheretheenumisdefined.
(19)explicit
Thiskeywordisadeclarationspecifierthatcanonlybeappliedtoin-classconstructor
declarations.Anexplicitconstructorcannottakepartinimplicitconversions.Itcanonly
beusedtoexplicitlyconstructanobject.
这个关键字声明说明符,可以只适用于同类构造函数声明。
显式构造函数不能在隐式转换的一部分。
它只
能用于显式构造一个对象
(20)export
MSDN只说Theexportkeywordisnotsupportedontemplates.一种导出语句吧..
(21)extern
extern意为“外来的”···它的作用在于告诉编译器:
有这个变量,它可能不存在当前的文件中,但
它肯定要存在于工程中的某一个源文件中或者一个Dll的输出中。
声明变量是在其他文件中声明(也可以看
做是引用变量).Objectsandvariablesdeclaredasexterndeclareanobjectthatisdefinedin
anothertranslationunitorinanenclosingscopeashavingexternallinkage.
(22)false,true
bool类型的两个枚举值.
(23)float
声明浮点型变量或函数.
(24)for
一种循环语句(可意会不可言传).Usetheforstatementtoconstructloopsthatmustexecutea
specifiednumberoftimes.
(25)friend
声明友元函数或者类.Thefriendkeywordallowsafunctionorclasstogainaccesstothe
privateandprotectedmembersofaclass.
(26)goto
无条件跳转语句.Performsanunconditionaltransferofcontroltothenamedlabel.
(27)if
条件语句.Controlsconditionalbranching.常与else一起用.
(28)inline
声明定义内联函数,编译时将所调用的代码嵌入到主函数中.Theinlinespecifiersinstructthe
compilertoinsertacopyofthefunctionbodyintoeachplacethefunctioniscalled.
(29)int
声明整型变量或函数.
(30)long
声明长整型变量或函数.
(31)mutable
Thiskeywordcanonlybeappliedtonon-staticandnon-constdatamembersofaclass.Ifa
datamemberisdeclaredmutable,thenitislegaltoassignavaluetothisdatamemberfrom
aconstmemberfunction.
这个关键字只适用于非静态和非const数据类成员。
如果一个
声明数据成员是可变的,那么它是合法的赋值从这个数据成员
aconst成员函数
(32)namespace
Dynamicallyimportsanelementbehaviorintoadocument.
动态导入到文档中的元素行为
c++中usingnamespacestd
(33)new
动态内存分配.Allocatesmemoryforanobjectorarrayofobjectsoftype-namefromthefree
storeandreturnsasuitablytyped,nonzeropointertotheobject.
分配内存的对象或数组类型的对象从自由的名义
存储和返回一个适当类型,非零对象的指针
(34)operator
Theoperatorkeyworddeclaresafunctionspecifyingwhatoperator-symbolmeanswhenapplied
toinstancesofaclass.
经营者关键字声明一个函数指定经营什么符号意味着当应用
对一类的实例
(35)private
类私有函数和数据成员的标示.Whenprecedingalistofclassmembers,theprivatekeyword
specifiesthatthosemembersareaccessibleonlyfrommemberfunctionsandfriendsofthe
class.Thisappliestoallmembersdeclareduptothenextaccessspecifierortheendof
theclass.
当上一类的成员,私人关键字列表
指定这些成员只能从成员的职能和朋友访问
类。
这适用于所有成员宣布了下一个访问符或结束
类
(36)protected
Theprotectedkeywordspecifiesaccesstoclassmembersinthemember-listuptothenext
accessspecifier(publicorprivate)ortheendoftheclassdefinition.
受保护的关键字指定访问类成员的成员名单,直至下一个
访问说明符(公共或私营)或类定义结束
(37)public
访问方式:
Whenprecedingalistofclassmembers,thepublickeywordspecifiesthatthose
membersareaccessiblefromanyfunction.Thisappliestoallmembersdeclareduptothe
nextaccessspecifierortheendoftheclass.
当上一类成员,市民关键字列表指定的
成员可以从任何功能。
这适用于所有成员宣布到
明年访问符或类的结束
(38)register
声明积存器变量.Theregisterkeywordspecifiesthatthevariableistobestoredinamachine
register,ifpossible.这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻
址访问,从而提高效率。
登记册关键字指定变量是要在计算机中存储的
注册,如果可能的话
(39)return
子程序返回语句(可以带参数,也看不带参数),返回函数调用点.Terminatestheexecutionofa
functionandreturnscontroltothecallingfunction(or,inthecaseofthemainfunction,
transferscontrolbacktotheoperatingsystem).Executionresumesinthecallingfunction
atthepointimmediatelyfollowingthecall.
终止执行的
功能及控制返回给调用函数(或者,在主函数的情况,
传输控制返回给操作系统)。
恢复执行在调用函数
在点后立即致电
(40)short
声明短整型变量或函数.
(41)signed,unsigned
声明有符号类型变量或函数;声明无符号类型变量或函数.
(42)static
声明静态变量.Whenmodifyingavariable,thestatickeywordspecifiesthatthevariablehas
staticdurationinitializesitto0unlessanothervalueisspecified.
当修改一个变量,static关键字指定的变量
静态durationinitializes为0,除非另一个指定值
(43)struct
声明结构体变量或函数.struct类型是一种值类型,通常用来封装小型相关变量组.
structhello文件名
(44)switch
Allowsselectionamongmultiplesectionsofcode,dependingonthevalueofanintegral
expression.
允许选择多个之间的代码段,这取决于一个整体的价值
表达
(45)template
模板.Thetemplatedeclarationspecifiesasetofparameterizedclassesorfunctions.
该模板声明指定的类或函数的参数化设置
(46)this
Thethispointerisapointeraccessibleonlywithinthenonstaticmemberfunctionsofa
class,struct,oruniontype.
在该指针是一个指针访问只有在一个非静态成员函数
类,结构或联合类型
(47)typedef
用以给数据类型取别名.Introducesanamethat,withinitsscope,becomesasynonymforthe
typegivenbythetype-declarationportionofthedeclaration.
引入了一个名称,在其范围内,成为一个同义词
该类型声明宣言的一部分给定类型
(48)typeid
typeidisusedtogettheTypeforatypeatcompiletime.
typeid用于获取一个类型的类型在编译时
(49)typename
Tellsthecompilerthatanunknownidentifierisatype.Usethiskeywordonlyintemplate
definitions.
告诉编译器是一个未知的标识符是一个type.Use这只是在模板中的关键字
定义
(50)union
声明联合数据类型.Aunionisauser-defineddataorclasstypethat,atanygiventime,
containsonlyoneobjectfromitslistofmembers(althoughthatobjectcanbeanarrayora
classtype).
阿联盟是一个用户定义的数据类型或类,在任何特定时间,
只包含其成员名单的对象(虽然这个对象可以是一个数组或
类类型)
(51)using
Theusingdeclarationintroducesanameintothedeclarativeregioninwhichthe
usingdeclarationappears.
使用声明的声明中引入了在该地区出现一个名称usingdeclaration
(52)virtual
声明虚基类或虚函数.Thevirtualkeyworddeclaresavirtualfunctionoravirtualbaseclass.
virtual关键字声明了一个虚函数或虚基类
(53)void
声明函数无返回值或无参数,声明无类型指针.
Whenusedasafunctionreturntype,thevoidkeywordspecifiesthatthefunctiondoesnot
returnavalue.Whenusedforafunction'sparameterlist,voidspecifiesthatthefunction
takesnoparameters.Whenusedinthedeclarationofapointer,voidspecifiesthatthe
pointeris"universal."
(54)volatile
说明变量在程序执行中可被隐含地改变,表明某个变量的值可能在外部被改变,优化器在用到这个变量时
必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。
Thevolatilekeywordis
atypequalifierusedtodeclarethatanobjectcanbemodifiedintheprogrambysomething
suchastheoperatingsystem,thehardware,oraconcurrentlyexecutingthread.
Thevolatile关键字
一个类型限定符用来声明一个对象可以在程序中修改的东西
如操作系统,硬件或并发执行线程。
(55)wchar_t
宽字.
(56)while
循环语句的循环条件
(57)class
类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 关键字