知识网之C++总结

知识网之C++总结

大家好,又见面了,我是全栈君。

           米老师常说的一句话:构造知识网。

立即要考试了。就让我们构造一下属于C++的知识网。首先从总体上了解C++:

             知识网之C++总结

       从图中能够了解到,主要有五部分。而当我们和之前的知识联系的话,也就剩下模板和运算符重载以及基础中的某些特性。这话怎么说呢??函数在VB中学过一些。多少有些底子和灵感,数组和指针在《数据结构导论》中学习过,所以这部分也不是难点。

那么这样来看的话。C++也就没有想象中的那么难了。复习也就不至于一抓瞎了。首先来看一个具体的图:

     知识网之C++总结

          就像图中显示的那样我们还是要注意下面几点:

 1.<标识符>

          下划线或字母开头;

          不能与随意一个keyword同名。

          区分大写和小写。

2.<函数>

       1)原型:不涉及參数的默认值问题,仅仅是声明类型而已。

       2)纯虚函数和虚函数:两者都使用virtualkeyword。但不同的是。虚函数的子类能够不重写而直接继承父类,也能够重写。而纯虚函数的子烈必须重写才干够使用。

还有一方面,   像这句代码显示的:virtual   void  Show()=0 的是纯虚函数,而定义名为Show的虚函数并不须要使用”=0”;

       3)strcpy:拷贝构造函数,形參都为引用。同一时候为了不改变形參的值必须使用常成员函数的keywordConst。

       使用该函数的三种情况:

            ·程序中须要建立一个对象,并用还有一个对象对它实例化

            ·函数的參数为类的对象

            ·函数的返回值是类的对象

         注:当使用该函数赋值字符串时,对于double、int类型的直接使用“=”进行赋值就可以。

       4)模板:符号<T>。不论是成员函数还是构造函数调用时都要使用标识符”<T>”;

       5)const:它用来限定一个变量不同意被改变。并且限定符声明的对象仅仅能被读而不被改动;常对象在定义时必须进行初始化。并且不能被更新。

       6)内联:inline

           注: 宏函数有预处理器对宏进行替换,内联函数通过编译器实现。

       7)友元:(friend)。不是当前类的成员函数。而是独立于当前类的外部函数。

当在函数主体中使用时,能够直接使用函数名和类型,如DateTime(d,t)。而且在外部声明  时也不用像成员函数一样在前面加上“类名::”

      8)递归:像《数据结构导论》中讲的那样,一个函数在函数体中调用了自身。

3.<重载>

     1)运算符重载

           在C++中不同意用户自定义新的运算符。仅仅能对已有的C++运算符进行重载;当中不能重载的运算符仅仅有5个(. 、.*、-> *、::、?:)

           重载运算符的函数不能有默认的參数,重载的运算符必须和用户定义的自己定义类型的对象一起使用,不同意參数所有是C++的标准类型。

      2)函数重载

             函数重载必须參数类型不一样或者參数个数不一样,而不能依靠返回值类型来区分重载函数。

   PS:重写和重载的差别:

        *    重载必须咋同一个类中。方法名必须同样。而且參数列表不能同样。

        *    重写是在不同的类中。发生重写的两个方法返回值、方法名和參数列表必须全然一致。子类方法的訪问级别不能低于父类对应方法的訪问级别。方法体不同。 

       

       混到如今的份上,VB、C#和vb.net都已经学过,才慢慢的发如今编程语言中的共鸣。这几种编程语言都有相通之处。仅仅是和人类一样,都有各自与众不同的一面。那么仅仅要搞清楚它们的不同也就够了。或许这就是我的知识网。

    知识网之C++总结

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116436.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月21日 下午12:00
下一篇 2022年1月21日 下午1:00


相关推荐

  • AQS原理解析

    AQS原理解析文章目录 1 AQS 介绍 2 AQS 原理 3 源码分析 AQS 模版方法模式加锁 独占锁 释放锁 独占锁 加锁 共享锁 释放锁 共享锁 1 AQS 介绍 AQS 的全程为 AbstractQueu 这个类在 java util concurrent locks 包下 publicabstra

    2026年3月16日
    2
  • md5 java 工具类_javamd5工具类

    md5 java 工具类_javamd5工具类importjava.io.UnsupportedEncodingException;importjava.security.MessageDigest;importjava.util.HashMap;importjava.util.Map;importjava.util.concurrent.locks.ReentrantLock;importorg.apache.commons.l…

    2022年7月14日
    20
  • 【已解决】【V1.0版本】如何彻底关闭Win10的自动更新并且随时可以恢复?

    【已解决】【V1.0版本】如何彻底关闭Win10的自动更新并且随时可以恢复?更新失败的问题我已经参考这篇文章解决了:【亲测管用】Windows10无法完成更新,正在撤销更改怎么办?精简脚本,在不删除服务的情况下阻止自动更新:【亲测管用】如何使用脚本关闭Win10自动更新服务并阻止其自动启动?如何关闭Windows10的自动更新真的是个大难题.当你遇到Windows更新包安装失败,却又被强制每天重新安装并且失败(安装失败有的时候得重启好几次),望着一遍又一…

    2022年6月4日
    39
  • lamda运算学习笔记

    lamda运算学习笔记lamda->Llamda演算至少从表面上看,有着这样一种企图:将所有运算操作,以及自然数都抽象成“函数”(再一次见识到函数这个概念的伟大)。下面简单的介绍下lamda演算。lamda演算的原始定义看起来比较无聊:(Lx.[fx])a=fa上式用熟悉的概念翻译,就是自变量为x的函数f(x),代入x=a,得f(a)但是这里有

    2022年5月30日
    34
  • xshell连接虚拟机步骤_安装虚拟机后如何使用

    xshell连接虚拟机步骤_安装虚拟机后如何使用Xshell连接虚拟机1、打开虚拟机终端,输入下面命令,找到ens33对应的IP地址,如图ifconfig2、打开Xshell,打开文件–>新建3、填写名称,主机这里填入刚才的IP,点击连接4、输入登录的用户名,点击确定5、输入密码,点击确定6、连接成功,可以开始使用…

    2026年2月19日
    5
  • pix是什么意思(pixio)

    本文会介绍cGAN和pix2pix,并在TensorFlow中使用pix2pix模型。一、cGAN原理使用GAN可以无监督生成全新的图片,比如使用GAN生成MNIST数字,虽然可以生成数字,但是不能生成确定的数字。如果希望控制生成的结果,例如生成数字1,此时就要用到cGAN了。cGAN的全称为ConditionalGenerativeAdversarialNet…

    2022年4月12日
    84

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号