类的思想是实现数据的抽象和封装
1.构造器和析构器:
(1).构造器:是为了初始化类对象的类的成员函数。
构造函数与普通成员函数有何不同?
构造函数与以下方式的常规函数不同:
1.构造函数与类本身具有相同的名称
2.构造函数没有返回类型
3.创建对象时会自动调用构造函数。
4.如果我们没有指定构造函数,C ++编译器会为我们生成一个默认构造函数(不需要参数并且有一个空体)。
5.构造函数的类型
6.默认构造函数,默认的构造函数是不带任何参数的构造函数,没有参数
Class construct {
Public ://public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用,在程序的任何其它地方访问,在类的定义中是要声明的。
Int a,b,;
Construct ()
{
a=10;
b=20;
}
}//即使我们自己不定义构造函数,编译器也会自动的构造一个空的构造函数
2. 参数化构造函数:
可以将参数传递给构造函数。通常,这些参数有助于在创建对象时初始化对象。要创建参数化构造函数,只需像对任何其他函数一样添加参数。定义构造函数的主体时,请使用参数初始化对象。// CPP program to illustrate
// parameterized constructors
#include <iostream>
using namespace std;
class Point {
private:
int x, y;
public:
// Parameterized Constructor
Point(int x1, int y1)
{
x = x1;
y = y1;
}
int getX()
{
return x;
}
int getY()
{
return y;
}
};
int main()
{
// Constructor called
Point p1(10, 15);
// Access values assigned by constructor
cout << "p1.x = " << p1.getX() << ", p001.y = " << p1.getY();
return 0; }
1
2.析构器;
一般来说构造器用来完成事先的初始化和准备工作(申请分配内存),析构器用来完成事后的清理工作(清理内存)
(1)析构器和构造器有一样的名字,只是前面多了一个~
Class car
{
Car ( );
~car();
}
注意(1)析构器永远不返回任何值
(2)析构器不带参数
(3)在复杂的类里,析构器往往十分重要(可能会引起内存的泄露)