C++学习笔记(四)

关于结构化程序设计

C语言中:程序=数据结构+算法

思想:1.程序由全局变量以及许多相互调用的函数构成的。2.算法以函数的形式实现,用于对数据结构进行操作。

不足:

  • 函数与其操作的数据结构没有直观的联系
  • 程序理解的难度随着程序规模增大而变大
  • 没有封装和隐藏的概念,不利于程序维护和补充
  • 查找错误困难
  • 使函数的重复使用变得困难

关于面向对象的程序设计

思想:程序=类+类+...+类

类和对象

  • 成员变量和成员函数统称类的成员
  • 类定义出来的变量,也成为类的实例,就是我们所说的对象
  • 对象占的内存等于所有成员变量的内存之和

如何使用成员变量和成员函数

  • 对象名.成员名
    例如:
lei r1,r2;
r1.a=10;
r2.calculate(10,20);

PS:对一个对象进行成员变量和成员函数的操作时不会影响到其他对象。

  • 指针->成员名

  • 引用名.成员名

类的成员函数与类的定义分开写

成员函数可以在类里面只做一个声明,在类外来写函数。

格式:函数类型名 类的名字::函数名();

例如

int lei::area();
{
return w*h;
}

类成员的可访问范围

注意:如果成员前面没有关键字,则默认为私有成员

构造函数

介绍:

  • 构造函数是成员函数的一种
  • 名字与类名相同,可以有参数但不能有返回值(void也不行)
  • 作用:初始化对象
  • 如果定义类时没有写,则自动生成一个默认的无参数的构造函数(不做操作)
  • 对象生成时自动被调用,生成后就不能再对其执行构造函数
  • 一个类可以有多个构造函数

好处:不必专门写初始化函数,也不用担心忘记调用初始化函数。如果对象没有被初始化就被使用,可能导致程序出错。

例子:

posted @ 2020-01-31 16:00  瑞图恩灵  阅读(84)  评论(0编辑  收藏  举报