C++学习(非APP搭建)
如果中文输出乱码(默认编码格式是linux的UTF-8),转换方案:工具->选项->文本编辑器->行为->默认编码->system->OK。然后在新建工程生效,对当前工程无效
C++特性:
封装:把客观的事物抽象成类(将数据和方法打包在一起,加以权限区分,达到保护并安全使用数据的目的)
继承:继承所表达的是类之间相关的关系。这种关系使得对象可以继承另外一类对象的特征和能力(避免重复开发,减少数据冗余)
多态:“一个接口,多种方法”
C++对C的扩展
1、::作用域运算符,通常取值局部变量优先,::后可以取全局变量。
命名空间
命名空间可以嵌套
命名空间是可新增的
拓展(命名空间中函数的调用
)
命名空间中的函数可以外部定义
无名命名空间(命名空间的标识符只能在本文件内访问,类似于C语言的static),尽量少使用
命名空间取别名
Using使用命名空间(C++命名规则,第一个单词小写后面可大写)
简化访问,代价->容易冲突
出现如上情况时,优先局部a=200
解决方案:
可以申明使用某一变量
但会出现如下错误
会和局部变量冲突
可以和全局变量在一起
碰到重载函数(c的函数入口地址=函数名。c++的函数入口地址=函数名+参数)
在命名空间中的函数重载
不同命名空间的同名成员,注意二义性
总结:
1、不能在函数内定义命名空间
2、命名空间的使用(::和using)
注:本文档仅学习总结