C++中的默认初始化

C++中的默认初始化涉及内置类型、复合类型、STL对象、结构体和类。内置类型如不在块内则初始化为0,否则值未定义;复合类型如引用必须初始化,指针未定义;STL对象通常为空对象;结构体和类如果没有自定义构造函数,编译器会提供合成的默认构造函数,但可能造成成员变量未定义或无法初始化的问题。为确保初始化正确,建议自定义默认构造函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引言

c++中涉及到内置类型、复合类型、STL对象、结构体、类等对象,初始化也有很多类型:默认初始化、拷贝初始化、直接初始化。

默认初始化是指未指定变量具体值时,变量自动被初始化。默认初始化存在很多差异,分类总结对于熟练掌握及应用大有裨益!
1.内置类型
默认初始值由定义的位置决定,若不在任何块内,初始化为0,否则未定义,或者说是拥有一个不确定的值。

#include<iostream>
using namespace std;
int oi;
double od;
bool ob;
int main(){
    cout<<oi<<endl<<od<<endl<<ob<<endl;
    int ii;
    double id;
    bool ib;
    cout<<ii<<endl<<id<<e
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值