靓仔你好,今天的博客是:构造函数
我们在使用C语言进行编写,特别是结构体类型,常常需要对这个结构体进行初始化,而在C++中,引入了“构造函数”这个概念,这个函数会在创建实例时自动调用,就为我们解决了很多的琐碎的事,之后我们会使用数据结构中的 “ 栈 ” 来为大家解释构造函数。首先我们先来了解构造函数的定义
1、构造函数是特殊的成员函数,函数名要与类名相同。
2、无返回值
3、对象实例化时自动调用对应的构造函数
4、构造函数可以重载
我们先从最简单的使用开始讲解
例如下图,我们声明了一个名为"Stack"的类
class Stack
{
public:
//构造函数
Stack(int campcitiy = 4)//注意,这里并没有设置函数返回值
{
_a = (int*)malloc(sizeof(int) * campcitiy);
if (_a == nullptr)
{
perror("malloc file");
return;
}
_top = 0;
_campcitiy = campcitiy;
_size = campcitiy;
}
}
图中与的函数就是这个类的构造函数,构造函数如何对实例进行初始化由程序员自己决定,上图中我们对这个栈进行了简单的初始化,当我们创建实