C++中构造函数的作用「建议收藏」

C++中构造函数的作用「建议收藏」构造函数用于解决类中的对象初始化的问题构造函数是一类特殊的函数,与其他的成员函数不同的是构造函数构造函数不需要用户来调用它,而是建立对象的时候自动的执行#include//#include”student.h”//#include//#includeusingnamespacestd;classTime{publi

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

构造函数用于解决类中的对象初始化的问题
构造函数是一类特殊的函数,与其他的成员函数不同的是构造函数构造函数不需要用户来调用它,而是建立对象的时候自动的执行

#include <iostream>
//#include "student.h"
//#include <string>
//#include <cstring>
using namespace std;
class Time
{ public:
    Time()    //构造函数必须与类的名称相同
    {                              //利用构造函数对对象中的数据成员进行初始化
        hour=0;
        minute=0;
        sec=0;

    }
    void set_time();
    void show_time();
private:
    int hour;
    int minute;
    int sec;

};
void Time::set_time() {
    cin>>hour;
    cin>>minute;
    cin>>sec;

}

void Time::show_time() {
    cout<<hour<<":"<<minute<<":"<<sec<<endl;

}
int main() {
    Time t1;
    t1.set_time();
    t1.show_time();
    Time t2;
    t2.show_time();

    return 0;
}

构造函数不需要用户调用,也不能够被用户调用。

带参数的构造函数

#include <iostream>
//#include "student.h"
//#include <string>
//#include <cstring>
using namespace std;
class Box{
public:
    Box(int,int,int);
    int volume();
private:
    int height;
    int width;
    int length;


};
Box::Box(int h, int w, int len) {
    height=h;
    width=w;
    length=len;
}
int Box::volume() {
    return height*width*length;
}
int main() {
   Box box1(12,25,36);   //建立对象box1并且指定对象的长宽高
    cout<<"the voluime of box1 is"<<box1.volume()<<endl;
    Box box2(15,65,32);
    cout <<"the volume of box2 is"<<box2.volume()<<endl;
    return 0;
}

带参数的构造函数中的形参,其对应的实参在定义对象时给定。
使用带有参数的构造函数可以方便的实现对不同的对象进行初始化。

#include <iostream>
//#include "student.h"
//#include <string>
//#include <cstring>
using namespace std;
class Box{
public:
    Box();
    Box(int h,int w,int len):height(h),width(w),length(len){}    //参数初始化列表使用形式
    声明一个有参的构造函数,用参数的初始化表对参数成员进行初始化
    int volume();
private:
    int height;
    int width;
    int length;


};
Box::Box() {
    height=5;
    width=8;
    length=23;
}
int Box::volume() {
    return height*width*length;
}
int main() {
   Box box1;   //建立对象box1并且指定对象的长宽高
    cout<<"the voluime of box1 is"<<box1.volume()<<endl;
    Box box2(15,65,32);
    cout <<"the volume of box2 is"<<box2.volume()<<endl;
    return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197728.html原文链接:https://javaforall.net

(0)
上一篇 2025年8月29日 上午10:01
下一篇 2025年8月29日 上午10:43


相关推荐

  • crm使用FetchXml聚合查询

    crm使用FetchXml聚合查询

    2022年1月24日
    50
  • rabbitmq linux端口,修改rabbitmq的连接端口

    rabbitmq linux端口,修改rabbitmq的连接端口rabbitmq 的默认连接端口是 5672 如果要修改的话 可以通过配置文件修改当然一般情况下都会遇到坑默认配置文件地址 安装目录下的 etc 就这样一个东东然后为了怕改错复制一份出来保留 就可以把后面的 example 删除掉留下 rabbitmq config 无图无真相 就是这个样紫然后打开瞧瞧非常大一篇 而且全部配置都是注释掉的 格式有点类似 json 数组 我们要修改默认的端口就找到 tcp listen

    2026年3月17日
    3
  • 怎么从安卓设备转移数据到苹果_安卓换苹果如何转移数据?

    怎么从安卓设备转移数据到苹果_安卓换苹果如何转移数据?展开全部可以用网盘工具来操作下。比方说用百度网盘,找到里面的“手机备份32313133353236313431303231363533e58685e5aeb931333431373266”功能,然后将数据都备份好。后面再到苹果手机上,安装一个百度网盘,然后将数据再保存到手机上就行了。手机上的数据要是不小心删除了,那可以通过强力恢复精灵找回(iPhone专用)。二、苹果手机数据转移到新iPhone1…

    2026年1月16日
    4
  • idea集成claude

    idea集成claude

    2026年3月16日
    2
  • openclaw安装笔记

    openclaw安装笔记

    2026年3月13日
    2
  • python怎么表示取余_python如何实现取余操作

    python怎么表示取余_python如何实现取余操作python实现取余操作的方法:可以利用求模运算符(%)来实现。求模运算符可以将两个数相除得到其余数。我们还可以使用divmod()函数来实现取余操作,具体方法如:【divmod(10,3)】。在python中要实现取余操作可以使用求模运算符(%),该运算符可以将两个数相除得到其余数。(推荐教程:Python入门教程)如果一个数恰好能被另外一个数据整除,则余数为0,%运算后返回结果为0。可利用余数…

    2022年4月25日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号