C++语法总结:控制符、指针、构造函数和析构函数
需积分: 3 189 浏览量
更新于2024-09-11
收藏 25KB DOCX 举报
C++ 语法总结
C++ 语法总结是对 C++ 编程语言的语法结构和编程规则的总结。以下是 C++ 语法总结的详细知识点:
**I/O 流的常用控制符**
在 C++ 中,I/O 流的控制符用于控制输入输出流的格式和内容。常用的 I/O 流控制符包括:
* `dec`:置基数为 10
* `hex`:置基数为 16
* `oct`:置基数为 8
* `setfill(c)`:设填充字符为 C
* `setprecision(n)`:设显示小数精度为 n 位
* `setw(n)`:设域宽为 N 个字符
* `setiosflags(ios::fixed)`:固定的符点显示
* `setiosflags(ios::scientific)`:指数表示
* `setiosflags(ios::left)`:左对齐
* `setiosflags(ios::right)`:右对齐
* `setiosflags(ios::skipws)`:忽略前导空白
* `setiosflags(ios::uppercase)`:16 进制数大写输出
* `setiosflags(ios::lowercase)`:6 进制数小写输出
* `setiosflags(ios::showpoint)`:显示小数点
* `setiosflags(ios::showpos)`:正数前面加上正号
**头文件**
在 C++ 中,头文件是包含函数和变量声明的文件。常用的头文件包括:
* `iostream.h`:输入/输出流头文件
* `iomanip.h`:输入/输出流格式化头文件
* `stdlib.h`:标准库头文件
**指针的几种类型**
在 C++ 中,指针是一种数据类型,用于存储内存地址。指针的几种类型包括:
* `int(*p)()`:p 为指向函数的指针变量,该函数带回一个整形值
* `int*p()`:p 为带回一个指针的函数,该指针指向整形数据
* `int(**)[n]p`:p 为一个指向一个指针变量的指针变量,被指向的指针变量指向一个含 n 个整形数据的一维数组
**构造函数和析构函数**
在 C++ 中,构造函数和析构函数是类的特殊成员函数。构造函数用于初始化对象,而析构函数用于释放对象占用的资源。
**构造函数**
* 构造函数可以有任意个形参,也可以重载(多个参数个数不同的函数)
* 构造函数不能任意调用,只能系统调用
* 构造函数的特点是可以有任意个形参,可以重载,可以任意调用
**析构函数**
* 析构函数不能有形参,因为是系统自动调用的
* 析构函数不仅系统调用,也可以任意调用
* 析构函数的特点是不能有形参,系统自动调用,不能任意调用
**构造函数和析构函数的自动运行**
* 构造函数:一般在定义类对象时自动运行
* 析构函数:如果一个函数中定义了一个对象,则在这个函数运行结束时就执行一次;当一个对象是使用 NEW 运算符被动态创建的,在使用 DELETE 运算符释放它时,DELETE 将会自动调用析构函数
**拷贝初始化构造函数**
* 当用 `tpointN(M)` 语句时调用一次
* 当对象作为实参向形参传递时,即对形参初始化时执行一次
* 当遇到 `M=return(N)` 语句,即对 M 进行初始化时调用一次
**this 指针**
* `this` 指针是类的隐式成员变量,指向当前对象
* `this` 指针的用法:例 63 中,当程序执行语句 `listelem(i)` 时,系统对 `this` 指针进行了如下的缺省赋值:`t`
C++ 语法总结涵盖了 C++ 编程语言的基本语法结构、I/O 流控制符、头文件、指针的几种类型、构造函数和析构函数、构造函数和析构函数的自动运行、拷贝初始化构造函数和 `this` 指针等知识点。
2008-10-27 上传
2014-07-03 上传
2007-04-05 上传
2021-09-17 上传
2011-02-25 上传
2018-11-08 上传
2021-09-26 上传
2008-03-22 上传
raynforu
- 粉丝: 0
- 资源: 2
最新资源
- JavaScript实现的高效pomodoro时钟教程
- CMake 3.25.3版本发布:程序员必备构建工具
- 直流无刷电机控制技术项目源码集合
- Ak Kamal电子安全客户端加载器-CRX插件介绍
- 揭露流氓软件:月息背后的秘密
- 京东自动抢购茅台脚本指南:如何设置eid与fp参数
- 动态格式化Matlab轴刻度标签 - ticklabelformat实用教程
- DSTUHack2021后端接口与Go语言实现解析
- CMake 3.25.2版本Linux软件包发布
- Node.js网络数据抓取技术深入解析
- QRSorteios-crx扩展:优化税务文件扫描流程
- 掌握JavaScript中的算法技巧
- Rails+React打造MF员工租房解决方案
- Utsanjan:自学成才的UI/UX设计师与技术博客作者
- CMake 3.25.2版本发布,支持Windows x86_64架构
- AR_RENTAL平台:HTML技术在增强现实领域的应用