欢迎来到天天文库
浏览记录
ID:6384921
大小:120.00 KB
页数:15页
时间:2018-01-12
《c++程序设计学习笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C++程序设计学习笔记C++程序设计一,数据类型1.保留字32+29个2.基本数据类型:wchar_t,bool3.非基本数据类型:class4.C++是强类型语言:要求在使用数据之前必须对数据的类型进行声明5.标识符的拼写方法:a)下划线连接法b)骆驼表示法:第一个单词首字母小写,其后每个单词的首字母大写c)匈牙利标记法:以类型简称为前缀,后跟骆驼表示法6.同义词:typedef7.实数默认为double型8.枚举类型:a)形式:enum类型名{枚举常量列表};b)枚举常量为整型c)枚举变量只能取枚举常量值,不能将整数值赋给枚举变量9.常
2、量:a)形式:const类型常量名=初始化值;b)常量定义时必须初始化c)常量名不能放在赋值语句的左边d)初始化值可以是一个常量表达式,但表达式中不能含有函数10.I/O流控制a)书写格式:输入cin>>变量输出cout<<表达式b)控制符:定义在中,可直接插入流中c)控制浮点数值显示:setprecision(n),默认为6位二,表达式1.左值:能出现在赋值表达式左边的表达式,具有存放数据的空间,且存放是允许的2.赋值表达式具有值,是左值,其值为赋值符号左边的表达式的值3.算术类型隐式转换原则:总是朝表达数据能力更强
3、的方向,并且总是逐个运算符进行4.强制类型转换:类型名(表达式)或(类型名)表达式5.自增自减,操作数必须是左值a)前增/减,是左值b)后增/减,不是左值6.C++中,表达式(无参函数除外)都产生值7.任何被转换的变量都不是左值8.当条件运算符后的两个表达式的值类型相同,且均为左值时,该条件表达式可做左值9.C中条件表达式不可做左值10.不同的编译器的求值顺序可能不同,从而造成:a)交换律不再适用b)使括号失去作用c)副作用FHF第15页2021/6/14C++程序设计学习笔记三,函数1.递归的条件:a)必须有完成函数任务的语句b)一个确定
4、是否能避免递归调用的测试c)一个递归调用语句d)应先测试,后递归调用2.内联函数a)目的:解决程序的运行效率b)形式:inline函数声明c)必须先声明,后调用d)内联函数中不能包含复杂的结构控制语句,不能是递归调用函数e)其处理方式与宏定义类似3.重载函数a)重载:在不同类型上作不同运算而又用同样的名字的函数b)重载函数至少在参数个数、参数类型、参数顺序上有所不同c)C++允许int到long、double的转换d)内部实现:采用名字粉碎方法来改变函数名4.默认参数的函数a)默认参数在函数声明中提供b)当既有声明,又有定义时,定义中不允许
5、默认参数c)默认参数在形参中应从右向左逐渐定义,调用时只能从右向左顺序匹配默认d)默认参数可将一系列简单的重载函数合并成一个,当同时使用默认参数函数和重载函数时,注意不要引起二义性e)默认值可以是:全局变量、全局常量、函数5.外部存储类型a)构成一个程序的多个源文件之间,通过声明数据或函数为外部的(extern)进行沟通b)默认的函数声明或定义总是externc)带extern的变量说明是变量声明,不是变量定义6.静态存储类型a)静态全局变量对组成该程序的其他源文件是无效的b)静态函数只在所属源文件中可见c)文件作用域下声明的inline函
6、数默认为static存储类型d)文件作用域下声明的const常量默认为static存储类型7.作用域a)作用域:标识符在程序中有效的范围,作用域开始于标识符的声明处b)局部作用域:起始于声明处1.{}块范围2.语句范围,在if/switch/for的条件表达式中定义的标识符c)函数作用域:标号是唯一有函数作用域的标识符,不受声明位置限制d)函数原型作用域:函数形参,局限于括号内e)文件作用域:在所有函数定义之外说明的,从说明点开始,一直延伸到源文件结束8.可见性a)标识符的可见范围不超过作用域b)如果被隐藏的是全局变量,可用符号::来引用给
7、变量FHF第15页2021/6/14C++程序设计学习笔记9.生命期a)与存储区域密切相关b)静态生命期:程序运行期1.具有文件作用域的变量2.无显示初始化时,自动初始化为03.函数具有静态生命期c)局部生命期:函数调用期,变量驻留在栈区,不自动初始化d)动态生命期:变量驻留在堆中,开始于new,结束于delete四,预编译1.头文件:源文件之间的接口,a)一般包含:类型声明、函数声明、内联函数定义、常量定义、变量声明、枚举、包含指令、宏定义、注释b)不宜包含:一般函数定义、变量定义、常量数组定义五,数组1.数组定义a)下标识数组元素到数组
8、开始的偏移量b)C++允许堆内存分配来建立数组c)局部作用域的数组,其内容不确定d)全局或静态作用域的数组,其内容初始全为0e)局部数组其大小受到栈空间的限制,对大数组一般定义为
此文档下载收益归作者所有