知识网之C++总结

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

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

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

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWVNDMTEyMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

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

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

时间: 2024-10-12 23:28:07

知识网之C++总结的相关文章

编织知识网

今天又看了看J2SE的视频,发现自己有一肚子的话要说.不管大家喜不喜欢听,总之我要打着编织知识网的幌子,肯定是要讲给大家听了.哈哈,下图是J2SE的核心内容概框. 看到他们,我想到了很多,不说出来憋在心里难受,还是和大家分享下吧. 看到内存,我第一个想到的是数据结构.数据需要分类,所以有了堆内存和栈内存.栈类型大小固定,由系统分配,存放值类型:堆类型大小不固定,手动申请.释放.你知道当new一个对象时内存发生了什么吗?首先在栈内存声明一个变量,用于保存对象的堆内存地址,然后在堆中开辟一块空间,保

android知识网

看大图:http://img.blog.csdn.net/20150712200557530 版权声明:本文为博主原创文章,未经博主允许不得转载.

C#——编程基础知识

编程基础知识适用于所有高级编程语言.学了C#的第一小节,又对这些基础知识梳理了一遍.感觉比学习VB的时候的理解好了很多.下面看图: 基础知识:数据类型,表达式,流程控制语句.一切皆在图中. 一直在做编织知识网的工作.自己真的是不撞南墙不回头啊.米老师早就说过:要记笔记,要少记笔记,多了没用,又不会回头看.可是自己看的时候完全相反了.依旧几乎全部是截图,总结的时候特别费劲儿.得浏览所有截图,然后在几乎与视频等量的信息里再找主题,找中心.可是苦不堪言啊.现在终于下定决心,不再截图了.虽然总是有那股冲

【C++知识汇总】运营商 &amp;amp; 运算符重载

[运算符] 在进行运算时,假设右括号的话我们知道先运算哪个,那假设没有括号了.算术运算符,关系运算符,逻辑运算符,位运算符.赋值运算符,++.--运算符等等,那么多的运算符.我们先算哪边.也就是这些运算符的优先级怎么排序呢? 优先级 操作符 描写叙述 样例 结合性 1 () [] -> . :: ++ -- 调节优先级的括号操作符 数组下标訪问操作符 通过指向对象的指针訪问成员的操作符 通过对象本身訪问成员的操作符 作用域操作符 后置自增操作符 后置自减操作符 (a + b) / 4; arra

操作系统概论知识理解(第二章)

编了几个故事加深对操作系统的理解: 进程的状态:初始状态,就绪状态,执行状态,等待状态,终止状态. 我初步准备3月6号上午10点找米老师聊天(初始状态):上午十点我站到米老师办公室门口,听了听办公室声音,挺安静的,准备敲门(就绪状态):进门后,和米老师聊天(执行状态):说着一半的时候,有人进来了,找米老师有急事,米老师先处理他的事情,这时我只能站着那里等着(等待状态):等米老师处理完他的事情之后,继续和我聊天,聊完后,心情好多了,和米老师告别后,离开了办公室(终止状态). 进程队列: 队列,队列

写给程序员的心理学入门知识(一)

正文之前 neil是14年毕业的一枚后台开发,在大学的时候除了钻研技术外,还喜欢看一些其他领域的书籍.作为工科学生,我们都很擅长逻辑思维.但作为社会人,工作和生活中不可避免地需要跟很多人打交道,学点简单的心理学大有裨益.其实在我看来,心理学等很多社会科学的知识在本质上都是逻辑,只是换了一种思维方式而已.所以,对于我们工科生来说,学一些入门的心理学常识是没任何难度的. 小小的打个广告.这篇文章是发布在neil的微信公众号上,这个系列还会有后续文章,也都会第一时间发布在微信公众号上.欢迎小伙伴们关注

备战软考(5) 计算机系统硬件知识

在刚开始做真题的时候,发现计算机系统这块的题总是错的很惨,于是将<软件设计师教程>的第一章反复看了几遍,但是光看还是不行的,需要去思考和总结,这样书本上的知识才能变成我们自己的知识. 对于计算机硬件系统的组成以及各部分的之间的关系,我们先来一个简单的总述: 计算机硬件系统由运算器.控制器.存储器.输入设备和输出设备5大部件组成.其中,运算器和控制器组成中央处理器(CPU).运算器负责完成算术.逻辑运算功能,通常由ALU.寄存器.多路转换器.数据总线组成:控制器则负责依次访问程序指令,进行指令译

svn 总结(二)——冲突

SVN 总结(二)--冲突 冲 突: 冲突就导致停止.中断,就想起了操作系统的中断处理和移动.其实中断处理也就 是由于"冲突",由于某事出现,中止现行的运行,用操作系统去处理出现的事件,待 适当时被终止进程继续运行的过程.移动:对已在存储器作业更加需要改存放位置,从 一个存储区移到另一个存储区的工作叫移到.这都是为了更好的工作,应对的一下解决 方法和案例. 一.冲突基础概念: 1.冲突:what? 2.冲突:why? 3.how?怎么解决? 对冲突的进行更改: 下面红色就表示冲突部分,

14年之花开不败

12年我正式进入提高班,直到现在应该是整整2年了吧.米老师说:现代是一个大数据时代.我理解的大数据时代,很简单:你一直都在做,知识.思想积累,这些东西都是数据,坚持的时间越长,数据量就会越大. 在提高班的学习,最不重要的就是知识的学习,那有就从最不重要的说起,到重要的,看看这一年都做了什么? (一)学习: 从14年年初,寒假期间到现在的学习安排: 计划: 执行: 现在在我眼里,学习已经成为了一种稀松平常的东西了.只要学习我就在进步. (二)从学习到学习方法上: 在我看来,学习分两种:一种是计算机