第一篇:C++心得体会
C++学习心得体会
通过一学期对C++的学习,我感觉学习C++是有一定难度却又是非常有趣 的科目。也是很有帮助的。
深刻感受到如果真的想要学好这么课,或者说是从这门课学到点什么东西 的话,那就是两个字:实践。学习编程的秘诀是编程,编程,再编程,一本再好 的书也不能挽救一个不动手的人。即使老师给了已经打好过的书上例子的程序,我们也应当把书上的程序例子亲手输入到电脑上实践,而且更高的境界是你应
当自己先尝试着写写代码,然后再看看自己的实现方法和书上的程序有何出入,或者谁的更好。所谓的实践就是自己上机练习,至少要把书上的例子调试通过,这很重要,因为一般数据机构后面的一些编程习题是再次基础上加进去的。书
上的成员函数的实现它不会全部写出来,只把当前所讲的一些重要的代码给出,基本上的数据结构书都是如此的,那些未给出的就要你自己去补充完整了,一
般都不会太难,有问题可以请教老师。书上的例子有很多都是一下子就给出了
所有的成员函数的声明,但实现可能不会全部写出来,篇幅限制。但我感觉也
不必把所有的成员函数都去一一实现,你可以一个一个来,解决一个再...C++相对于数学分析和高等代数来说还是简单一点,它没有复杂的计算,只
需要理解好知识点,然后多敲敲键盘写写程序就可以很好地掌握了,但是想学 的更好,我觉得必须的多看点课外书,这也是必须的。
这是个人的一点学习心得,希望能更好的运用到学习中去。C++是一门很有
用的、对于我们的就业很实际的语言,学习好C++是一项必须而实际的任务。我
们必须要好好掌握。
——2015214193郑冬冬 数院信息二班
第二篇:c++课程设计心得体会
课程设计心得体会
学生成绩管理是高等学校教务管理的重要组成部分,其内容较多,要完成能够实现人员的信息录入、查询、修改、删除、统计、保存、显示等操作。系统具体实现的功能如下:
1.添加新的联系人
2.删除所有联系人
3.删除某个联系人
4.查询某个联系人
5.查询所有联系人
6.将电话本导出到文件
7.从文件导入电话本
8.查询并编辑某个联系人
9.全班同学的平均分
大概的算法分析
学生成绩管理软件的数据结构
学生成绩一般都是以每个成员为单位进行管理的,一个学生学号用一个结点来表示。考虑到添加、查询和删除的方便,这些以学号为单位的结点用链表方式组成一个主目录。每个结点有四个域:
(1)学生代号;
(2)课程情况;
(3)成绩信息管理情况;
各函数的功能和实现(学生成绩管理的相关功能由对应的函数来实现)(1)添加新的联系人
用代码实现输入及输出添加新的联系人的学号,姓名,性别,生日、语文成绩,数学成绩;完成添加工作。
(2)删除某个联系人
首先输入要删除的姓名,然后要在系统中查看是否有此记录,再用分支结构实现删除链表中此员工结点并修改学校员工链表及未找到这条记录;因为可能系统中不存在此记录。
(3)删除所有联系人
此功能要逐条删除联系人,则我们采用分支、循环结构实现首先遍历是否有给记录,输出读取记录或没有该记录;再到文件是否读完,若没读完则要循环继续读取,否则已删除了所有记录。
(4)查询某个联系人
因此功能会出现还没有任何记录、未找到这条记、输出该联系人信息三种情况,我们则选用简单的三分支结构;首先要请输入要查询联系人的姓名,输出有记录或还没有任何记录,有记录则遍历所有人,最后是未找到这条记录,输出该联系人信息。
(7)从电话本导入文件的流程图
首先查看是否有记录,输出没有任何记录或打开“Manager.txt”,历遍链表,将人员结点信息写入文件Manager.txt、关闭文件,最后成功保存到Manager.txt。
其余的函数功能实现相似则不重复。
心得体会
刚放假不久,我们组的积极分子们就张罗着要开始编写程序了,编写这个程序我们经历了讨论选题,编写代码,调试,写设计报告等。在这期间我们查阅了很多相关的资料,曾盯着课本发呆过,我们成员之间也曾进行过激烈的口舌论战。经过这个暑假来的实践学习,使我们对C++语言有了更进一步的认识和了解,要想学好它,则重在实践,要通过不断的上机操作及实例运用才能更好地深入体会它,当然通过实践,我们也发现我们的好多不足之处。就比如我们对C++语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,一些经常出现的错误也不能很好地处理。我们编写这个程序使用的是比较简单的函数及结构,由于我们的水平有限,还不能很好的使用一些效率高的方式来编写,所以也没有突出的创新点。在做题的时候我们都是分工合作。分工完成结构体、函数设计、算法分析等,这些过程中总是有很多错误出现,有好多的小问题都是我们粗心大意造成的,所以设计程序一定要仔细,不容一点的马虎。当然也有大问题,关于文件的操作,类的使用等等这些使用我们都琢磨了很久,在解决错误时我们有时几乎焦头烂额了。但是我们与队友之间都会不断的相互鼓励、支持,彼此都努力维护着将作业写完。虽然这设计有点枯燥无味,但是当最后我们大功告成时,回味起来还是美滋滋的。总的来说我们真的是在设计的过程中受益匪浅。
第三篇:c++课程心得体会
心得体会
在这几周的面向对象的课程设计中,通过完成本次任务,我所收获到的东西颇丰。
利用设计这次学生信息管理的机会,使我熟练地掌握了上学期所学的C++面向对象程序编程,也更加深入理解了学生信息管理的操作原理和了解了文件的用法及其作用,为日后如何熟练使用文件打下坚实的基础。此外,本次算法的实现采用了C和C++语言面向对象编程,使我对基类的构建,派生类的使用等等各类c的知识,有更深层次的认识。
在这次课程设计中,我还懂得了程序开发的一些比较重要的步骤,如总体分析,程序模块设计等。相信通过此次课程设计会为我以后的学习和工作带来很大的好处。最重要的还是激发我对编程的兴趣和热情,让我从一个只懂理论变成了做一些小程序,让我们对编程更加热爱。
最重要的是,在这次的编程中我们不断地从源程序中寻找错误,修改错误,通过不断地更新程序提升对编程的理解。虽然现有的编程还不完美,但是执着认识到了追求完美的信念,相信在下一次的面向对面编程的过程中能将程序推向所能的极致。
通过在这次编程中和队友的携手合作,为以后的合作打下不错的默契,培养相互的信心,提高集体的凝聚力。总而言之,这次的课程设计是比较成功的。程序设计最重要的是要敢于创新,而不应该止步于旧知识的应用,唯有不安于现状,才能有更大的发展空间。
第四篇:c++实践心得体会1600
在本课程学习过程中我遇到了下面这些问题:
1、刚开始C++实践理论课的学习时,我的学习兴趣很高,总想着自己能够完全掌握PPT的知识,做成一个完美的程序。随着学习的进展,调试程序总是出现问题,最夸张的一次出现了204个ERRORS,也经常不知道怎么去在正确的期房插入程序块。而比较严格的语法规则,也让我一时难以接受,产生畏难情绪,总是怕,最后因为怕学不好而导致没有学好。
2、注重理论学习,忽视上机编程实践,造成“只能用笔在纸上编程”的奇怪现象。特别是在刚开始时,我一开始编译连接就手忙脚乱,总是会出现许多错误。有时程序则一再出现错误,使我就更不理解该如何查找错误,如何排除错误了。
3、在前期的学习中我没有抓得很紧,总觉得不是很难,希望通过突击搞定课程学习。而事实上,本课程实践要靠平时的积累,几乎不能靠临时突击,因为前面基础不够扎实,到了后面险些无法弥补。
4、我发现自己在后期的学习中有些急于求成,总想编写综合性的程序,把老师的要求一次性尽快完成。这直接导致了我编的程序一时很乱,几乎无法阅读。
后来才发现为了学好本课程,没有什么窍门,只能采用一些“笨”技巧:
认真听讲,积极思考,提高上课效率。老师上课讲述的都是课程实践的重点和难点,听好课程能够达到“事半功倍”的目的。
主动上机,多多实践,提高动手才能,实习时不能着急。通过上机实践来验证所学的理论,通过在机器上查找错误来巩固概念,通过提高上机才能来促进理论学习,开阔编程思路,提高反映效率,提高分析问题解决问题的才能,锻炼心理素质,提高心理承受才能。
这是第二次上计算机实践课程了,第一次是网页设计。虽然两次要完成的任务不同,但给人的感觉都是较迷茫的。由于我上课时没有认真听C++课程老师的讲解,学得相当糟糕,但要设计的又是一个较大的程序,便去请教老师。老师建议我们找一个模板,认真仔细地看,去理解它,看懂它,然后根据自己的实践内容适当修改,应该就没多大问题了。
老师的话给了我莫大的鼓励,但不自觉地滋生了傲慢的态度。只要有个模板不就行了嘛,小事一桩啊!但结果并非如此,在后来的实践过程中,我还是碰到了许多麻烦。
其中,对于按省份给每个省的总发表篇数进行排序这一问题,刚开始真的不会弄,我一开始以为要用一维数组来排序,可还是不太明白。于是,我询问了周边同学,才知道他们用的是Access导入C++,再利用Access的排序功能,并且调试成功了,听他们讲解后我便用了他们的方法。与同学讨论、向同学请教有时候也不失为一个好方法,一个人的智慧毕竟是不全面的,集体的力量才是强大的!同时,在运行时老是会出现一些错误,但我发现其实里面的参数并不复杂,只要跟着那个error的提示,一个一个的改下去,其实很简单的。结果事实也是如此,用了一个小时多一点,102个错误全部搞定了。错误几乎为以下三类:
1.冒号,分号等符号打错了; 2.大小写等造成的对应问题; 3.变量的不完全修改。
改完以后,在执行时我发现界面不好看,于是我又将主界面略加修改了些。看上去美观了不少。再运行功能,几乎都能顺利运行,但还是存在一些瑕疵,但是我还是不太会弄清怎么回事。于是,又去问同学,在他们的帮助下,成功解决这个问题,在此真要好好谢谢他们!
终于大功告成!欣慰在这次实践中,我不仅弥补了自己在C++课上所落下的内容,尤其是指针那块部分,虽然现在概念搞的还不是很懂,但看见程序是能够理解的。这次C++实践是给我们这一学期来所学知识的一个总复习,总的实践。它让我们把所知道的知识点运用的更好,把不知道的知识点搞得明白了。实践出真知,通过这次实践,我也系统的把课本好好的第四次回顾了下。猛然觉得,C++二级考试更有把握了。
在本门课程实践过程中,我更好的领悟了自学的重要性,并且和同学加强了交流,以便我们互相及时答疑解惑。同时我也学会了采用多种形式进行交流,不仅只是传统的面对面进行相互答疑,同时也利用网络通过百度知道、百度文库、邮件、BBS进行网上交流,也学会了绝对不要将问题积累到最后。
同时在本次实践中,我还开阔了眼界,打开了思路,阅读了几本关于C++编程的教程,从而通过理解不同作者对于C++的不同看法,来提高我对C++的理解,以方便自己在未来对C++的进一步学习。
第五篇:C++常用填空题
一、单项选择题(共20题,每题1分,共20分)
6、对重载函数形参的描述中,错误的是 D
A.参数的个数可能不同
B.参数的类型可能不同
C.参数的顺序可能不同
D.参数的个数、类型、顺序都相同,只是函数的返回值类型不同
9、通常的拷贝构造函数的参数是
A. 某个对象名 B.某个对象成员名
C. 某个对象的引用 D.某个对象的指针名
10、关于构造函数特点的描述中,错误的是
A.定义构造函数必须指出类型
B.构造函数的名字与该类的类名相同
C.一个类中可定义0至多个构造函数
D.构造函数是一种成员函数
12、关于常成员的描述中,错误的是
A.常成员包含常数据成员和常成员函数两种
B.常数据成员必须是公有的C.常数据成员要使用构造函数成员初始化列表进行初始化
D.常对象只能调用它的常成员函数,不能调用其它的成员函数
13、关于友元函数的描述中,错误的是
A.友元函数不是成员函数
B.友元函数只能访问类中私有成员
C.友元函数破坏隐藏性,尽量少用
D.友元函数说明在类体内,使用关键字friend18、能够释放对象所占资源的是(析构函数)
二、填空题(共9题16空,每空1分,共16分)
1、函数重载时,编译系统会根据_形参的类型或形参的个数 来区分。
3、若希望用一个已有对象来构造另一个同类型的对象,可以使用拷贝构造函数来实现。
4、静态成员属于类,而不属于任何一个对象,它被同一个类的所有对象共享。
5、类的继承方式有私有 继承、公有 继承和保护继承。
6、重载运算符的含义必须清楚,不能有二义性。
7、按照联编进行阶段的不同,联编方法可分为两种: 动态联编 和静态联编。
8、当基类中的某个成员函数被声明为虚函数后,此虚函数就可以在一个或多个派生类中被重新定义,在派生类中重新定义时,其函数原型,包括返回类型、参数名、函数个数、参数类型以及参数的顺序都必须与基类中的原型完全相同。
1.在类中必须声明成员函数的原型,成员函数的实现部分可以写在类外。
2.如果需要在被调函数运行期间,改变主调函数中实参变量的值,则函数的形参应该是引用类型或指针类型。
3.抽象类只能作为基类使用,而不能声明它的对象。
4.进行函数重载时,被重载的同名函数如果都没有用const修饰,则它们的形参个数或类型必须不同。
5.通过一个常对象只能调用它的常成员函数,不能调用其他成员函数。
6.函数的递归调用是指函数直接或间接地调用自身。
7.拷贝构造函数的形参必须是本类对象的引用。