zoukankan      html  css  js  c++  java
  • 知识网之C++总结

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

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

                

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

    那么这样来看的话。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都已经学过,才慢慢的发如今编程语言中的共鸣。这几种编程语言都有相通之处。仅仅是和人类一样,都有各自与众不同的一面。那么仅仅要搞清楚它们的不同也就够了。或许这就是我的知识网。

       

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    周鸿祎笔录
    set multiset 集合实现众数的统计
    栈实现 汉诺塔 操作是否符合规范
    优先队列----解决排序问题
    字符串的应用(续一)
    优先队列 的实例(未完----待续)
    字符串的应用
    栈实现括号
    Jave垃圾回收算法
    Java 按代回收垃圾以及回收算法
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5100010.html
Copyright © 2011-2022 走看看