C++ 构造函数
构造函数是类的函数,在创建类的新的对象时执行。构造函数与类名相同,并且没有返回值类型,即使是void也不行。它们主要用于为类的变量提供初始值。
两种主要的构造函数类型是默认构造函数和参数化构造函数。以下是关于它们的详细信息。
默认构造函数
默认构造函数不接受任何参数。如果程序员没有显式提供默认构造函数,则编译器会提供一个隐式默认构造函数。在这种情况下,变量的默认值为0。
演示默认构造函数的程序如下所示。
示例
#include <iostream>
using namespace std;
class A {
private:
int num1, num2 ;
public:
A() {
num1 = 5;
num2 = 7;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
};
int main() {
A obj;
obj.display();
return 0;
}输出
num1 = 5 num2 = 7
在上面的程序中,类A包含一个默认构造函数,它将num1和num2初始化为5和7。它还包含一个函数display(),用于打印num1和num2的值。代码片段如下所示。
class A {
private:
int num1, num2 ;
public:
A() {
num1 = 5;
num2 = 7;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
};main()函数包含类类型A的对象定义。然后调用display()函数。如下所示。
A obj; obj.display();
参数化构造函数
参数化构造函数可以接受参数,以便在创建对象时对其进行初始化。参数的添加方式与普通函数相同。参数化构造函数可以隐式或显式调用。
演示参数化构造函数的程序如下所示。
示例
#include <iostream>
using namespace std;
class A {
private:
int num1, num2 ;
public:
A(int n1, int n2) {
num1 = n1;
num2 = n2;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
};
int main() {
A obj(3,8);
obj.display();
return 0;
}输出
num1 = 3 num2 = 8
在上面的程序中,类A包含一个参数化构造函数,它使用n1和n2提供的值初始化num1和num2。它还包含一个函数display(),用于打印num1和num2的值。代码片段如下所示。
class A {
private:
int num1, num2 ;
public:
A(int n1, int n2) {
num1 = n1;
num2 = n2;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
};main()函数包含类类型A的对象定义。然后调用display()函数。如下所示。
A obj(3,8); obj.display();
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP