CPP学习笔记(1)

it2025-04-21  2

CPP学习笔记

1、 类和对象的特性

对象具有静态特征和动态特征 ,分别称为属性与行为。外界想对象发送信息称为“消息”。对象一般由一组属性与行为构成,在CPP种每一个对象都是由数据与函数构成。 数据体现了其属性,而函数是用来对数据进行操作以实现某些功能。

2、CPP中的类与对象的关系

CPP中的对象的类型是类(class)。类代表了某一批对象的共性与特征,类是对象的抽象,二对象是类的具体实例(instance)。

3、声明类的类型

class student { private: int num; char name[20]; char sex;//数据成员 public: void display()//这是成员函数 { cout<<"num:"<<num<<endl; cout<<"sex:"<<sex<<endl; cout<<"name:"<<name<<endl;//操作语句 } }; student stud1,stud2;

总结下 class name { private: 私有的数据和成员函数; public: 公用的数据与成员函数; }; 其中public和private被成为成员访问限定符。被声明为private的成员只能被本类的成员函数引用,类外不能调用(友元类除外),而public既可以被本类的成员函数引用也可被类的作用域内的其他函数引用。 也就是说你只能利用类内函数操作的private内的数据

4、定义对象的方法

1、先声明类型,然后再定义对象

(1)class 类名 对象名; class student stud1,stud2; (2)类名 对象名; student stud1,stud2;

2、在声明类的同时定义对象

class student { public: void display()//这是成员函数 { cout<<"num:"<<num<<endl; cout<<"sex:"<<sex<<endl; cout<<"name:"<<name<<endl;//操作语句 } private: int num; char name[20]; char sex;//数据成员 }stud1,stud2; //定义了两个student类的对象

3、不出现类名,直接定义对象

class {private: {} public: {} }stud1,stud2; //定义了两个无名类的对象

4、类和结构体类型的异同

struct student { private: int num; char name[20]; char sex;//数据成员 public: void display()//这是成员函数 { cout<<"num:"<<num<<endl; cout<<"sex:"<<sex<<endl; cout<<"name:"<<name<<endl;//操作语句 } }; student stud1,stud2;

其实完全可以用struct声明一个类 cpp内保存了这种方式 区别是 用struct声明的类如果对其成员不作private或public的声明,系统将其默认为public,而用class则相反

4、在类外定义成员函数

成员函数简单说明

struct student { private: int num; char name[20]; char sex;//数据成员 public: void display()//这是成员函数声明 }; void student:: display()//这是类外成员函数 { cout<<"num:"<<num<<endl; cout<<"sex:"<<sex<<endl; cout<<"name:"<<name<<endl;//操作语句 } student stud1,stud2;

5、内置成员函数(inline成员函数)

如果类体种定义的成员函数种不包括循环等控制结构,CPP系统会自动地对它们自动作为内置函数进行处理。但是如果是在类外声明成员函数

6、成员的储存方式(inline成员函数)

一个类对象所占空间大小只取决于该对象中的数据成员所占的空间,与成员函数无关不论是否使用inline,inline只与程序的执行效率,而与成员函数是否占用存储空间无关

7、 通过对象名和成员运算符访问对象中的成员

若要访问公用数据成员,则语法为 对象名.成员名

8、类和对象的简单应用

#include<iostream> using namespace std; class rectangle { public: //对外接口 int input(); // 将数值转入成员数据种 int volume();//完成计算 private: int length; int width; int height; }; int main() { rectangle t1;// 定义一个类的对象 t1.input(); t1.volume(); rectangle t2; t2.input(); t2.volume(); rectangle t3; t3.input(); t3.volume(); } int rectangle::volume()//计算函数 类外定义 { int t; t = length * width * height; cout << "volume is " << t << endl; cout << "Done" << endl; return 0; } int rectangle::input() //输入函数 类外定义 { cin >> length; cin >> width; cin >> height; return 0; }
最新回复(0)