C++类与对象 2/3

一.类的6个默认函数

C++类与对象 2/3_第1张图片




二.构造函数

2.1概念

  首先我们看一下c语言对结构体的初始化

struct PersonInfo
{
   
	int index;
	char name(30);
	short age;
}

void InitStruct()
{
   
	PersonInfo p={
   1,"mr",23};
	}

  但是在C++中类不能像结构体一样初始化,所以其初始化方式如下

class Person{
   
	public:
	Person();
	int m_index;
	int getindex();
}
Person::Person()
{
   
m_index=10}

  所以这里我们引入构造函数的概念:构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,保证每个数据成员
都有 一个合适的初始值,并且在对象的生命周期内只调用一次。

2.2特性

  构造函数是特殊的成员函数,需要注意的是,构造函数的虽然名称叫构造,但是需要注意的是构造函数的主要任务并不是开空间创建对象,而是初始化对象。构造函数仅仅是初始化对象,并不开辟空间。

其特征如下:

  1. 函数名与类名相同。
  2. 无返回值。
  3. 对象实例化时编译器自动调用对应的构造函数。
  4. 构造函数可以重载。
class Date
{
   
	public :
	Date()
	{
   }
	//无参构造函数
	public:
	Date(int year,int month ,int day)
	{
   
	m_year = year;
	m_month = month;
	m_day = day;
	}
	//有参构造函数
	private:
	int m_year

你可能感兴趣的:(c++,编程语言,数据结构)