当前位置: 首页 > news >正文

【C++入门篇 - 3】:从C到C++第二篇

文章目录

  • 从C到C++第二篇
    • new和delete
    • 命名空间
      • 命名空间的访问
    • cin和cout
    • string的基本使用

从C到C++第二篇


new和delete

在C++中用来向系统申请堆区的内存空间

New的作用相当于C语言中的malloc

Delete的作用相当于C语言中的free

注意:在C语言中,如果内存不够时可以使用realloc进行内存的扩容(注意:少用,因为申请的内存可能是不连续的或者是共用了其他的内存),而在C++中,如果内存不够,则重新分配一个更大的连续内存,把原来内存的数据拷贝过来,然后原内存释放

在这里插入图片描述
1、new是运算符
2、new可以分配两种内存,一种是单个内存,一种是连续的内存
3、new只有分配单个内存的时候可以同时给该内存赋值

1、delete 是运算符
2、delete可以释放两种内存,一种是单个内存,一种是连续内存
3、delete释放内存时,指针的必须是指向内存首地址

命名空间

1、命名空间是用来组织和重用代码的编译单元。

2、在编写代码时写的程序不可能所有的标识符都没有重名现象,
在多人协同开发时更加不可控,尤其对于库来说问题更加严重。
为了解决重名现象,通过命名空间来避免冲突。
在这里插入图片描述

  • 使用 :: 作用域运算符
    在这里插入图片描述

命名空间的访问

在头文件中进行命名空间的操作:

  • 先创建一个头文件 myTest.h 和一个.cpp文件 myTest.cpp
    在这里插入图片描述
    在这里插入图片描述
  • 访问方式一
    在这里插入图片描述
  • 访问方式二
    在这里插入图片描述
  • 访问方式三
    在这里插入图片描述
  • 命名空间取别名
    在这里插入图片描述

cin和cout

in的作用类似于scanf

cout的作用类似于printf

他们在是具体使用的时候有些区别
在这里插入图片描述

string的基本使用

1、string是c++中的字符串。类似于c语言中的字符数组。

2、string是系统提供的一个类
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/460467.html

相关文章:

  • YOLOv8模型改进 第七讲 一种新颖的注意力机制 Outlook Attention
  • C#多线程基本使用和探讨
  • PHP DateTime基础用法
  • 一次Fegin CPU占用过高导致的事故
  • 【Go初阶】两万字快速入门Go语言
  • 【React】使用 react hooks 需要遵守的原则
  • Python编程:创意爱心表白代码集
  • 腾讯IM SDK:TUIKit发送多张图片
  • 《本地部署开源大模型》在Ubuntu 22.04系统下ChatGLM3-6B高效微调实战
  • Python 脚本来自动发送每日电子邮件报告
  • 大语言模型与ChatGPT:深入探索与应用
  • 【从零开始的LeetCode-算法】3164.优质数对的总数 II
  • FastDFS VS MinIO:文件存储与对象存储的抉择(包含SpringBoot集成FastDFS范例)
  • 【Redis】缓存预热、雪崩、击穿、穿透、过期删除策略、内存淘汰策略
  • 【LeetCode】每日一题 2024_10_15 三角形的最大高度(枚举、模拟)
  • 2024版最新网络安全工程师入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
  • vue中关于router.beforeEach()的用法
  • C++模板初阶,只需稍微学习;直接起飞;泛型编程
  • 【数据结构 | 红黑树】红黑树的性质和插入结点时的调整
  • mysql学习教程,从入门到精通,SQL导入数据(44)
  • 【SpringAI】(二)让你的Java程序接入大模型——适合Java宝宝的大模型应用开发
  • 音频剪辑在线工具 —— 让声音更精彩
  • ​http短连接和长连接​
  • 日志分析删除
  • DART: Implicit Doppler Tomography for Radar Novel View Synthesis 笔记
  • redis-cli执行lua脚本
  • MySQL9的3个新特性
  • 《网络基础之 HTTP 协议:状态码含义全解析》
  • java真的正在越来越失去竞争力了吗
  • 【通过zip方式安装mysql服务】