当前位置: 代码迷 >> 综合 >> C++ 类构造函数定义和调用
  详细解决方案

C++ 类构造函数定义和调用

热度:17   发布时间:2024-02-23 23:26:54.0

概念

C++人为万事万物都是对象,对象就有其属性和行为,如汽车的属性有轮胎,方向盘和车灯等,可以载人,开空调等行为。

语法

class 类名
{访问属性:属性/行为
};

class和struct区别

  • struct的默认权限是public
  • class的默认权限是private

私有权限的好处

  • 可以自行控制读写权限
  • 对于写入操作,可以检查数据的有效性。

构造函数分类和调用

  • 分类
    • 按参数分类:有参构造和无参构造
    • 按类型分类:普通构造和拷贝构造
  • 调用方式
    • 括号法
    • 显示法
    • 隐式转换法

程序源码

#include <iostream>
#include <string>using namespace std;//定义类
class Person
{
public:Person() {cout << "construct ()" << endl;}Person(int age){this->age = age;cout << "construct (age)" << endl;}~Person() {cout << "destruct" << endl;}private:int age;
};int main()
{//括号法Person p1;	//调用无参构造函数Person p2(18);	//调用有参构造函数//Person p3();	//调用无参构造函数,不要使用(),会误以为定义函数(函数的定义:int fun1())//显示法Person p4 = Person(10);	//调用有参构造函数Person p5 = Person(p4);	//调用拷贝构造函数//隐式转换法,匿名方式Person(10);	//生成匿名对象,当前程序行结束,立即回收匿名对象//Person(p4);		//不要使用拷贝构造函数来初始化匿名对象,这样写等价于Person (p4)=Person p4,语法会检测到重复定义对象return 0;
}

 

  相关解决方案