C++学习笔记

---恢复内容开始---

1 类和对象

class Box
{
   public:
      double length;   // 盒子的长度
      double breadth;  // 盒子的宽度
      double height;   // 盒子的高度
};

类提供了对象的蓝图,所以基本上,对象是根据类来创建的。声明类的对象,就像声明基本类型的变量一样(int  a)。下面的语句声明了类 Box 的两个对象:

Box Box1;          // 声明 Box1,类型为 Box
Box Box2;          // 声明 Box2,类型为 Box
  • 类的成员:类中的数据和方法
  • 公共数据成员可以使用直接成员访问运算符 (.) 来访问
  • 在面向对象中,我们说一个类有方法和字段,也可以说它有成员函数和成员变量。

 类的成员:包括两类,即数据和方法(成员函数)。

 

公有(public成员在程序中类的外部是可访问的。您可以不使用任何成员函数来设置和获取公有变量的值。

私有(private)成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有该类的成员函数和友元函数可以访问私有成员。

保护(protected)成员变量或函数与私有成员十分相似,但有一点不同,保护成员在派生类(即子类)中是可访问的。

  • 1.private 成员只能被本类成员(类内)和友元访问,不能被派生类访问;

  • 2.protected 成员可以被派生类访问。

2 构造函数和析构函数

类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。

构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void。构造函数可用于为某些成员变量设置初始值。

class Line
{
   public:
      void setLength( double len );
      double getLength( void );
      Line();  // 这是构造函数
 
   private:
      double length;
};
 
// 构造函数定义
Line::Line(void)
{
    cout << "Object is being created" << endl;
}
// 带参数的构造函数定义
Line::Line( double len)
{
    cout << "Object is being created, length = " << len << endl;
    length = len;
}
Line::Line( double len): length(len)
{
    cout << "Object is being created, length = " << len << endl;
}  //使用初始化列表来初始化字段

上述代码等同于:
Line::Line( double len)
{
  length = len; cout << "Object is being created, length = " << len << endl;
}

 

 

3 多态

同一操作,作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。

---恢复内容结束---

1 类和对象

class Box
{
   public:
      double length;   // 盒子的长度
      double breadth;  // 盒子的宽度
      double height;   // 盒子的高度
};

类提供了对象的蓝图,所以基本上,对象是根据类来创建的。声明类的对象,就像声明基本类型的变量一样(int  a)。下面的语句声明了类 Box 的两个对象:

Box Box1;          // 声明 Box1,类型为 Box
Box Box2;          // 声明 Box2,类型为 Box
  • 类的成员:类中的数据和方法
  • 公共数据成员可以使用直接成员访问运算符 (.) 来访问
  • 在面向对象中,我们说一个类有方法和字段,也可以说它有成员函数和成员变量。

 

2 多态

同一操作,作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。

posted @ 2018-10-18 23:46  JohnTesla  阅读(80)  评论(0编辑  收藏  举报