C++基础知识(2)

本文介绍了C++中的动态存储分配,包括与C语言兼容的malloc()和free(),以及C++特有的new和delete操作。讲解了如何使用new运算符进行对象和数组的动态分配,并强调了delete操作的对象必须是通过new获取的。此外,还提到了结构体、初始化方式(如列表初始化)、强制类型转换以及基于范围的for循环等概念。示例展示了如何初始化变量、使用基于范围的for循环遍历数组并输出结果。
摘要由CSDN通过智能技术生成

C++动态存储分配

可以兼容C语言的动态存储分配

  • malloc();
  • free();
  • new();
  • delete();

new 类型名;
new 类型名(初始值);
new 类型名[个数];
double *ptr = new double[3];

delete 指针名;
delete [ ] 指针名;
delete 操作对象只能是new出来的

初始化

int a = 1;
int a(1);
int a();//这个是函数,无参数,返回值int类型。
//列表初始化
int a{1};
int a = {1};
int a{ };//初始化a的值为0

结构体

结构体是特殊的类,比类有更多的约束。
C++中结构体的成员,可以是变量,也可以是函数。

强制类型转换

  • (类型)值
  • (类型)(值)
  • 类型(值)

还有使用强制类型转换符的情况:

  1. 静态转换
  2. 动态转换
  3. 重新解释
  4. 去除指针或引用的const属性

格式:强制类型转换运算符<目标类型>(要转换的值)

在这里插入图片描述

基于范围的for循环

for(数据类型 迭代变量:范围)
{
//循环体
}

int a[5] = {1, 2, 3, 4, 5};
for(int i: a)
{
cout << a;
}

输出结果:

12345

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猛笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值