C++中结构体的构造函数

2023年8月5日,周六上午


在C++中,结构体和类是非常相似的,它们都可以具有构造函数。

事实上,在C++中,结构体和类之间的唯一区别就是默认的访问权限不同。

结构体可以有默认构造函数、带参数的构造函数、拷贝构造函数等,就像类一样。

构造函数用于初始化结构体的成员变量,在创建结构体对象时被调用。

cpp 复制代码
#include<iostream>

struct MyStruct {
    int value;

    MyStruct() {
        value = 0;
    }

    MyStruct(int v) {
        value = v;
    }

public:
    void showValue(){
		std::cout<<"Value:"<<value<<std::endl;
	}

};

int main(){
	MyStruct obj1;         // 使用默认构造函数创建对象,value被初始化为0
	obj1.showValue();
	MyStruct obj2(10);     // 使用带参数的构造函数创建对象,value被初始化为10
	obj2.showValue();
}
相关推荐
黎雁·泠崖几秒前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472461 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
阿猿收手吧!1 小时前
【C++】std::promise原理与实战解析
c++
TechWJ1 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly2024062 小时前
C++ 文件和流
开发语言
m0_706653232 小时前
分布式系统安全通信
开发语言·c++·算法
Zach_yuan2 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
寻寻觅觅☆2 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
lightqjx2 小时前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列
zh_xuan3 小时前
kotlin lazy委托异常时执行流程
开发语言·kotlin