一、C语言和C++的区别
- C语言------------面向过程的程序思想
- 自上而下,逐步求精
- 一个main函数+多个子函数
- C++语言--------面型对象的程序设计思想
- 实现软件的产业化
- 万事万物皆为对象
二、类
c++特点:抽象 封装 继承与派生
类的定义:
class 类名
{
成员列表
};//类体结束后必须要用;结束
注意:
1.类体结束后必须要用 ; 结束
2.每个类可以没有成员,也可以有多个成员。
3.类成员可以是数据或者函数
4.所有成员必须在类的内部声明,一旦类定义完成,则没有其他任何方式可以增加成员了
5.每个类可以包含成员函数,成员函数作为对外界的接口,通过成员函数访问数据
6.如果类中有成员函数,声明成员函数是必须的,定义成员函数是可选的,类的成员函数有两种形式。
7.类定义一般放在程序文件开头,或者放到头文件中被程序文件包含,此时这个定义是全局的。
8.类定义可以放在函数内部或局部作用域中,若函数内部有同名的类定义,则全局声明在该函数内部是无效的。(底下有例子)
class Data { void show(); int data; }; void fun() {//全局Data在fun函数中无效,有效的是局部定义的Data class Data//局部的Data定义 { void show() { cout << data; } int data; }; }
成员函数定义,声明的两种方式
- 类中定义(声明)成员函数
class 类名 { 返回类型 函数名 (形参列表) { 函数体 } };
- 成员函数的声明在类中,定义在类的外部
class 类名 { 返回类型 函数名(类型1 参数名1,类型2 参数名2,。。。)//成员函数声明 }; 返回类型 类名::函数名(形参表) { 函数体//成员函数定义在外部实现 }
例
class Data { void set(int d);//成员函数原型声明 int get() { return data;//成员函数内部定义 } int data;//数据成员 }; void Data::set(int d)//成员函数外部定义 { data = d; }