Hi,您好,欢迎来到西安盛图软件科技有限公司!

C++基础|C++ 构造函数

发布时间:2023-12-12 13:55:20

C++ 是面向对象的编程语言,对象就是面向对象程序设计的核心。所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体的概念。本文主要介绍C++ 构造函数。

1、构造函数

C++ 中的构造函数是一种特殊的方法,当创建类的对象时会自动调用该方法。

要创建构造函数,请使用与类相同的名称,后跟括号():

例如,

#include<iostream> 
using namespace std;

class MyClass {     // class
 public:           // 访问修饰符
   MyClass() {     // 构造函数
     cout << "Hello World!";
   }
};
int main() {
 MyClass myObj;    // 创建MyClass的一个对象(这将调用构造函数)
 return 0;
}

注意:构造函数与类具有相同的名称,始终为public,并且没有任何返回值。


2、构造函数参数

构造函数还可以接受参数(就像常规函数一样),这对于设置属性的初始值很有用。

例如,

#include<iostream> 
using namespace std;

class Person {        // class
 public:          // 访问修饰符
   string Name;  
   string Birthday;  
   int Age;      
   Person(string x, string y, int z) { // Constructor with parameters
     Name = x;
     Birthday = y;
     Age = z;
   }
};
int main() {
 Person obj1("C", "1999-01-01", 1999);
 Person obj2("C++", "1999-01-01", 1969);
 // Print values
 cout << obj1.Name << " " << obj1.Birthday << " " << obj1.Age << "\n";
 cout << obj2.Name << " " << obj2.Birthday << " " << obj2.Age << "\n";
 return 0;
}

就像函数一样,构造函数也可以在类之外定义。首先,在类的内部声明构造函数,然后在类的外部定义它,指定类的名称,后跟作用域解析符::,再后跟构造函数的名称(与类相同):

例如,

#include<iostream> 
using namespace std;

class Person {        // class
 public:          // 访问修饰符
   string Name;  
   string Birthday;  
   int Age;      
   Person(string x, string y, int z);
};
// 类外的构造函数定义
Person::Person(string x, string y, int z) {
 Name = x;
 Birthday = y;
 Age = z;
}
int main() {
 Person obj1("C", "1999-01-01", 1999);
 Person obj2("C++", "1999-01-01", 1969);
 // Print values
 cout << obj1.Name << " " << obj1.Birthday << " " << obj1.Age << "\n";
 cout << obj2.Name << " " << obj2.Birthday << " " << obj2.Age << "\n";
 return 0;
}

以上为本次所有分享内容

addffbe8602b57d798f22949b3de8ce.png

上一篇:C++ 访问修饰符
下一篇:C++ |类的静态成员变量和函数