c++基础知识入门

作者: 26a058e669f9 | 来源:发表于2019-08-08 21:36 被阅读0次

    c++类型划分

    可以粗略的说c++就是在c的基础上增加了class类

    c++将类型分为两种,一种是内置类型,一种是自定义类型

    内置类型:也就是上图所分类的基本数据类型,即语言内部已定义的基本类型

    自定义类型:自己用struct/class/union/enum等定义的类型

    命名空间

    全局变量存在静态区,局部变量存在栈上。

    #include<iostream>这个库中定义了命名空间

    #include<iostream.h> vc6.0依旧支持这个旧的头文件

    cout,cin,endl等都属于std这个命名空间,特别说明cout与cin都能自动识别类型,无需像c语言一样指定输入输出类型。

    ::为作用域解析符,::左边的域这里为空,则表示限定为全局,在::左边添加域名,可以指定访问某个域

    命名空间就是用来定义域,使达到名字隔离的作用,解决命名冲突的问题

    using namespace a 就是将命名空间a中的所有内容展开到全局中

    命名空间可以嵌套访问 如  my::your::a  可以芳my这个空间内的your空间中的a变量

    函数重载

    允许函数名相同,参数列表不同(个数不同/类型不同),返回值可相同可不同

    那么c++如何支持重载呢?

    为了便于理解我们先将文件执行的过程:

    在c语言中,符号查找表中存储的是函数名,函数名不允许重复出现,所以c语言无法实现重载,c++使用的是函数名修饰规则,将函数名、函数类型、函数名长度等组合起来共同形成符号查找表中的名字,故避免了重名情况,也就实现了重载

    缺省参数

    当没有参数传入或只有一部分参数传入时,自动调用缺省参数

    缺省可分为全缺省与半缺省(这里不是缺省一般,而是局部缺省),缺省只能从右往左缺省,缺省参数必须是连续的,因为传参是从左往右的。

    引用

    引用不是定义一个新的变量,而是给一个已经定义的变量重新起一个别名

    int a=0;

    int &b=a;

    b就是a的别名

    引用的特点:

    一个变量可以取多个别名

    引用必须初始化

    引用只能在初始化的时候引用一次,不能再变为其他变量的别名

    当被const修饰时:

    const int a =0;                                                                    int  a=0;

    const int &b=a;                        或                                       const int &b=a;

    引用的作用:

    传参,在函数内部的改变也会影响外部。

    提高效率

    引用做返回值(出了作用域对象还在),如出了作用域对象不在则用传值返回

    ---------------------

    版权声明:本文为CSDN博主「enjoymyselflzz」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。

    原文链接:https://blog.csdn.net/enjoymyselflzz/article/details/80965904

    相关文章

      网友评论

        本文标题:c++基础知识入门

        本文链接:https://www.haomeiwen.com/subject/amfadctx.html