C++入门笔记:面向对象与命名空间
需积分: 0 152 浏览量
更新于2024-08-04
收藏 8KB MD 举报
本篇笔记主要介绍了C++编程的基础概念和关键特性。首先,**C++概述**部分提到,C++是在C语言基础上增加了面向对象编程和泛型编程的支持,这使得C++具有更高的抽象能力和灵活性。
**第一个程序:Hello World** 是一个典型的入门示例,展示了如何使用`iostream`库进行输入输出。`#define_CRT_SECURE_NO_WARNINGS`是一个预处理宏,用于避免警告;`using namespace std`引入了标准命名空间,使代码更加简洁。`cout`用于输出文本,`endl`用于换行并刷新缓冲区;`system("pause")`暂停程序执行,便于观察结果;`EXIT_SUCCESS`是程序成功退出的标准返回值。
**面向对象编程三大特征**包括封装、继承和多态。封装是将数据和操作数据的方法捆绑在一起,保护数据的安全性;继承允许创建子类继承父类的属性和行为,实现代码复用;多态则是指同一种行为在不同对象上表现出不同的形式。
**命名空间**是C++中重要的概念,用于解决多个开发者在同一项目中避免命名冲突。命名空间提供了隔离作用域,防止标识符重复。创建命名空间的关键在于理解其目的和规则:
1. **命名空间的作用**:解决项目中标识符的重命名问题,确保代码清晰。
2. **命名空间定义**:如`namespace A`,`A`是命名空间的名称,内部可以定义变量和函数。
3. **注意事项**:
- 命名空间只能写在全局作用域;
- 命名空间可以嵌套,如`namespace Maker`中的`namespace B`;
- 命名空间是动态扩展的,但新成员需在加入后使用;
- 匿名命名空间用于临时作用域内的私有成员;
- 可以通过`using`关键字给命名空间取别名;
- 当多个命名空间中存在同名元素时,需要在cpp文件中明确指定命名空间。
通过这篇笔记,学习者可以初步掌握C++语言的基础语法和面向对象编程的概念,以及如何有效地管理命名空间以提高代码的可维护性和可读性。后续的学习可以深入探索C++的更多特性,如类、对象、模板等,进一步提升编程技能。
2020-07-21 上传
Magician_liu
- 粉丝: 765
- 资源: 1
最新资源
- sentry-ssdb-nodestore:Sentry的SSDB NodeStore后端
- 附近JavaScript:适用于JavaScript的ArcGIS API应用程序可查找附近的地点并路由到最近的位置
- aiap-field-guide:每周Aiap课程
- Ambit Components Collection-开源
- Glider Screen-crx插件
- PCB_FDTD.zip_matlab例程_C++_Builder_
- 快速收集视图的自定义蜂窝布局-Swift开发
- js-pwdgen-wannabe
- facebook-sdk:适用于Facebook Graph API的Python SDK
- markdown文档转pdf工具
- lucy:基于键值存储网络的聊天机器人
- Year Clock-crx插件
- goodmobileirisrecognition.rar_matlab例程_matlab_
- matlab人脸检测框脸代码-opencv4nodeJs-4.5.2:适用于Node.js的OpencvBuild
- CTI110:CTI110存储库
- L-one-crx插件