美文网首页
C++之构造函数基础篇

C++之构造函数基础篇

作者: 二进制人类 | 来源:发表于2022-10-22 10:10 被阅读0次

构造函数的概述

构造函数:编译器自动调用,如果用户不提供构造函数,编译器会提供一个空的无参构造函数。

类实例化对象的时候,先为对象开辟空间,在自动调用构造函数 完成初始化。

构造函数定义形式

  1. 构造函数必须是public

  2. 构造函数的函数名必须和类名称相同, 不能有返回值类型(连void都不可以),可以有形参(构造函数可以重载)。

class Data
{
public:
 Data()
 {
 cout<<"无参构造"<<endl;
 }
};

int main(int argc, char *argv[])
{
 //实例化对象 自动调用 无参构造
 Data ob1;
 return 0;
}

构造函数分类

无参构造

有参构造

拷贝构造

构造函数调用形式

#include <iostream>

using namespace std;
class Data
{
private:
 int m_A;
public:
 Data()
 {
 cout<<"无参构造"<<endl;
 }
 Data(int a)
 {
 m_A = a;
 cout<<"有参构造m_A="<<m_A<<endl;
 }
};

int main(int argc, char *argv[])
{
 //1、隐式调用无参构造(推荐)
 Data ob1;
 //2、显示 调用无参构造
 Data ob2=Data();

 //3、隐式调用有参构造(推荐)
 Data ob3(10);
 //4、显示调用有参构造
 Data ob4=Data(20);

 //5、匿名对象 当前语句结束 匿名对象将被释放
 Data();//无参的匿名对象
 Data(30);//有参的匿名对象

 //6、以下代码不是实例化对象 而是函数声明
 //该函数名为ob5 无参 返回值类型为Data
 Data ob5();

 return 0;
}

相关文章

  • C++之构造函数基础篇

    构造函数的概述 构造函数:编译器自动调用,如果用户不提供构造函数,编译器会提供一个空的无参构造函数。 类实例化对象...

  • C++基础③new对象,继承,友元函数,函数的可变参数

    接续上篇C++基础②构造函数,析构函数,拷贝构造函数 前言 C++是一门面向对象的编程语言 , 创建用以创建对象 ...

  • C++中容易被忽略的基础知识

    const和define的区别C++中static关键字的总结C++中的构造函数及深拷贝浅拷贝c++基础之引用和指...

  • 第2章 类和对象

    2.1 类的基础知识2.2 构造函数2.3 拷贝构造函数2.4 析构函数2.5 C++能自动产生成员函数2...

  • windows逆向3

    VC 程序内存和编译的一些特征C++ 构造函数C++ 成员函数C++ 析构函数C++ 全局对象的构造C++ 全局对...

  • 构造函数和析构函数

    鸡啄米:C++编程入门系列之十四(类与对象:构造函数和析构函数)

  • c++基础(构造函数)

    构造函数是创建类实例时候对实例进行初始化,做一些实例的个性事情,类(型)更像表单,模板。具体的内容还是需要实例根据...

  • C++ 构造过程

    构造函数 C++中每个类必须有一个构造函数,如果用户没有自行编写构造函数,则C++会自动提供一个无参数的构造函数,...

  • C++:面向对象基础

    构造函数 C++中有三种构造函数:默认构造函数,有参构造函数,拷贝构造函数 类对象的初始化 括号法//默认构造函数...

  • [C++之旅] 10 构造函数

    [C++之旅] 10 构造函数 构造函数的特点 构造函数在对象实例化时被自动调用 构造函数与类同名 构造函数没有返...

网友评论

      本文标题:C++之构造函数基础篇

      本文链接:https://www.haomeiwen.com/subject/ccbvzrtx.html