VC++复习
VC++是面向对象的可视化集成编程系统。
C++语言面向对象编程基础
1.一个简单的C++语言程序
main是主函数名,函数体用一对大括号括住,函数是C++语言程序里最小的功能单位。
C++语言程序里必须有且只能有一个函数main( ),它是程序执行的入口。
C++语言所有语句最后都应当有一个分号。
2.C++语言程序基本要素
C++语言的字符集:
(1)英文字母:A ~ Z,a ~ z。
(2)数字字符:0~9。
(3)特殊字符:空格、!、#、%、^、&、*、_、+、=、-、~、<、>、/、\、‘、"、;、.、,、()、[]、{}。
关键字全部由小写字母组成。
标识符是软件开发者自己声明的单词,用于命名一些实体,如函数名、变量名、类名、对象名等。构成规则:
(1)以大写字母、小写字母或下画线开头。
(2)可由大写字母、小写字母、下画线或数字组成。
(3)字母区分大小写,大写字母和小写字母表示不同的标识符。
(4)不能用C++语言的关键字。
尽量**不用下画线开头,**避免与系统定义的关键字冲突。
分隔符不进行实际操作,只是用于构造程序。
数据类型指明变量或表达式的状态和行为,决定了数的取值范围和允许执行的运算符集。可分为基本类型和引用类型两大类。
基本类型是指不能再分解的数据类型,其数据在函数的调用中是以传值方式工作的。
unsigned (int) 无符号整型
(signed) int 有符号整型
换行符 \n 回车符 \r 水平制表符(Tab键) \t
变量:先定义,后使用
使用变量之前必须先声明它的类型和名称
例如:int和float的声明变量
int num;
float a;
常量:const <数值类型> <常量名>
const float pi=3.1415926
基本运算符:+、-、*、/、%。(-作为负号时为一元运算符,作为减号时为二元运算符)
前置后置:i++是后置;–i是前置。例如:
int i=5,j=5,m,n;
m=i++; //后置++;相当于m=1;i=i+1;结果:i=6;m=5
n=++j; //前置++;相当于j=j+1;n=j;结果:j=6,n=6
赋值运算符:=、+=、-=、*=、/=、%=、<<=、>>=、&=、^=、|=。 结合性从右向左。例如:
a=3+(c=4)
这个表达式的值为7,a=7,c=4。
逗号运算符:(例如)
c=b=(a=3,4*3); //结果为:a=3,b=12,c=12,表达式值为12
c=b=a=3,4*3; //结果为:a=3,b=3,c=3,表达式值为12
c=(b=a=3,4*3); //结果为:a=3,b=3,c=12,表达式值为12
关系运算符:<、<=、>、>=、==、!=。前四个优先级相同,后两个优先级相同。前四个优先级比后两个优先级高。
逻辑运算符:!(非)、&&(与)、||(或)。优先级依此降低。(&与|同时运算)
条件运算符:C++语言唯一的三元运算符。例如:
(a<b)?a:b
a:b表示如果a<b,那么结果为a;如果a>b,那么结果为b。
sizeof运算符:计算某个对象在内存中占用的字节数。
sizeof(int); //值为4
double x; sizeof(x); //值为8
表达式中的类型转换分为:隐含转换和强制转换。
隐含转换是安全的,因为没有精度损失。
隐含转换原则:将低类型数据转换为高类型数据。
从低到高的顺序:char、short、int、unsigned int、long、unsigned long、float、double。类型越高,范围越大,精度也越高。
赋值运算要求赋值运算符左边的值和右边的值类型相同,不同的话,会进行自动转换,将一律将右边的值类型转换为左边的值类型。例如:
int i; float f; double d;
d=i*f; //计算时现将i转换为f一样的浮点型的值,乘法结果再转换为双精度浮点型的值。
3.类与对象
面向对象程序设计理论角度:类是对某一类对象的抽象,而对象是对类的具体实例。
程序设计的角度:类是一种复杂的自定义数据类型,对象是属于这种类型的变量。
抽象:对象进行概括,抽出一类对象的共性并加以描述的过程。 有两方面:数据抽象和行为抽象。
数据抽象:属性和状态。 行为抽象:共同行为或共同功能。
例如:
时钟(clock)
数据抽象:
int Hour; int Minute; int Second;
行为抽象:
ShowTime(); SetTime();