定义:生成数据类型的一个实例。定义某类型的变量或对象时,系统会为该变量或对象分配内存。
赋值:让已经定义好的变量或对象具有某个数值。
初始化:在定义的同时进行赋值。初始化有两种形式:=和(),前者叫做复制初始化,复制初始化调用构造函数创建一个临时对象,然后将该临时对象作为参数调用复制构造函数;后者叫做直接初始化,直接初始化直接调用与实参匹配的构造函数。无论是哪种方式,初始化都是对变量或对象的一种构造。然而初始化和赋值不一样,赋值时,对象已经存在;初始化时,对象正在生成。当然,两者的结果都是死的赋值运算符左边的对象具有与右边的对象相同的值。
声明:所有变量必须先声明再使用,声明时只需表明变量或对象的类型和名字,其目的是声明该对象的存在。声明不一定是定义,但定义一定是声明。声明通常有两种方式:定义性声明和extern实现的声明。当定义完一个变量或对象,也就完成了该对象的声明。以extern实现的声明意思是:当需要引用定义在文件作用域中的变量或对象时,在引用之前要以extern声明该变量或对象。