首页 > 代码库 > 初识C++类

初识C++类

  认识类,先认识对象。

  1. 对象:一个对象标识现实世界中独一无二的实体。例如,一名学生,一张桌子,一个圆……一个对象具有唯一的身份、状态和行为。对象的状态用数据域(data fileds)来表示,也成为对象的属性,在程序实现中用变量、数组来体现。对象的行为用一组函数来表示,对对象调用一个函数就是请求对象执行一个任务。

  2. 类(class):类是相同类型的对象的一个通用模版。在C++类中,用变量定义数据域,用函数定义行为。同时一个类还提供了一些特殊的函数——构造函数(constructor),在创建新的对象时候,这些函数会被调用。

 1 class Circle 2 { 3 public: 4     // The radius of this circle -----data filed 5     double radius; 6  7     // Constructor function on argument 8     Circle()  //--- default. Name is same to the class name 9    {10         radius = 1.0;  11     }12    13    // Constructor function on argument14    Circle(double newradius)  // no return type, include void15     {16        radius = newraduis;  17       }18 19     // function20    double getArea()21     {22         return radius*radius*3.1415926;23      }         24 };

  3. 构造函数

    一个类的构造函数的名字与类名是相同的。构造函数可以被重载,只要它们的签名(原型)不一样。

    一个类通常都会有一个无实参的构造函数,例如Circle(),如果一个类中没有构造函数被声明,C++会隐含的声明这样一个无实参的空构造函数。

    构造函数没有返回类型,即函数名前面没有类型关键字。

    其作用是创建对象并初始化。

 

  4. 对象

  创建对象的语法:

ClassName  variableName;ClassName  variableName(arguments);  // 带参数的构造函数创建对象例如:Circle circle1;Circle circle2(10.2);

 

  访问对象:当一个对象创建以后,可以用对象成员访问运算符(. ,点运算符)来访问对象的数据和调用对象的函数。

objectName.dataFiledobjectName.function(argument)

  5. 关键字public

     表明所有的数据域、构造函数和普通成员函数都是可以通过类对象来访问的。

 

  6. 匿名对象(anonymous object):当需要创建一个对象,并且只使用一次的时候可以创建为匿名对象。

  

// 无参数构造函数创建匿名对象ClassName()// 带参数构造函数创建匿名对象ClassName(arguments)// 创建了一个对象,并将其内容复制给circle1circle1 = Circle();circle2 = Circle(5.0);

  

  注意:

    1) 与普通变量类似,可以使用赋值运算符(=)来进行对象间的复制

    circle1 = circle2;  // 将对象circle2的内容复制给circle1,circle1和circle2仍然是两个不同的对象;

    2)和数组名一样。一旦一个对象被声明之后,它是独一无二的,是一个特定的对象,不能对它重新赋值,让他表示另外一个对象。

初识C++类