您的位置:首页 > 其它

远征系列----起航篇(学杂记)

2016-02-08 01:39 246 查看
明天就是新年了,这里给大家拜个年,祝大家新年快乐,万事如意,现在就是分享在学习了第一章起航篇中的一些学习心得。(写完发现已经是新年了,尴尬。。)

接下来是起航篇的学习内容





1.1简介

*得知了c++的地位是比较高的,而且比较稳定。(附上一张c++的社区排名)



*还有c与c++的区别有一点在于c++加入了面向对象,两者都有的是面向过程(并不懂什么是面向对象,于是百度了一下)

解答:

*面对对象就是:

把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。程序流程由用户在使用中决定。

*面向过程就是:

自顶向下顺序执行,逐步求精;其程序结构是按功能划分为若干个基本模块,这些模块形成一个树状结构;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。程序流程在写程序时就已决定。

之后附加的小练习我是做错了(答案是D)



*一直以为c++更为高级,就应当更加的高效,可是并不是这样,于是上网查找了这个问题。

找到了一个比较适合的答案(http://www.educity.cn/develop/476407.html)

(摘取的一小点:

1.速度之王:c语言不论在处理器中还是在内存堆栈里,都是速度最快的。而且其高效不仅仅体现在速度上,即使是内存的管理以及启动时间上,也无人望其项背。

2.我总是告诫自己,我需要一个更加高效的可以替代c语言的东西。它只要可以修正程序里面那写毛糙的细节然后解决问题就可以了。但是从事实来看,不论是从语法、从语义、从工具或者从"自顶至底"的开发方法来看,没有什么可以值得我们为止付出努力。到现在为止,c语言毫无疑问的是最高效的语言,我认为短期内这不会有任何改变。)

原来C语言才是根,是本。

2.1IDE环境的构建

没什么特别的,就是推荐了Microsoft Visual Studio 2010,及其使用方法。

3.1 小练习(比较简单,感觉和C语言差不多,没什么压力完成)

4.1c++的特性

*明白了几种C语言的数据类型,里面也包括了几种大一上没接触的类型(联合类型和枚举类型)。



这节主要还是让我认识到了bool类型(一个我理解了半天,在自己理解的基础之上再向堂哥请教,基本是有了一定的理解)





*对Bool的理解(本人感觉挺重要的,弄明白也觉得挺自豪的,莫取笑。。。)

Bool y=false;(其实y=false和y=0是完全等价的)

Cin>>y;(疑问:如果我不设置这一项的话,也就是不输入y,那么它是否说明都不代表呢? 答案是其实它代表的就是0,(如果你用cout<<boolalpha<<y那么就是false了)

(如果是输入0 的话就代表是错误的,如果输入是1则代表是正确的)

其实bool和int,float之类的是一个意思,不过它只有两个值,一个是0 ,另一个是1,0代表是false,1代表是true,bool应用于if的判断中。

疑问:能不能直接打印出y的值,比如输入是0,那么cout<< 这个东东 ;那么他是否能够输出0,如之前的教程里面表示的如果是cout<<boolalpha<<y;那么你输入的是0,它输出的就是false?

答案:其实是可以的,输出的就是0,甚至你可以拿它来进行简单的运算也是可以了,这里我表示有点惊呆了,但也是这里我更加明白了bool的意义了


*还有学习了c++可以随用随定义(但是我在学习c的时候并没有注意到这点,我都是习惯性的回到最初的那行进行数据的定义),还有就是c++多了个int x(1024),感觉没什么差别。。。。



4.3c++的输入输出的方式

*输入


用>>表示如,也比较好几,就像是吐进来的一样。而让我感觉真正神奇的是居然不需要再加了繁琐的前缀(%d之类的)

(但是这里我也有点疑问:那空格到底是表示要打下一个内容还是空格本身就是内容的一部分。(这个暂时还未解决。。。。)

*输出


输出跟输入一样,<<也是很好理解,就是突出来,朝外面的。(感觉输出就没什么特别的)

学了输出和输入我感觉就是c++看上去会更加的简洁,自由吧,不过我之前看过一句话,如今也是我的qq签名:自由的代价是永远警惕。感觉这种自由也会更加的容易出错,所以我认为使用时候需要更加注意。

接下来的练习也没什么错误吧,就前面举的那个练习是我记忆深刻的。

4.5c++新特征和输入输出的演示

这里我得到的就是八进制,十进制,十二进制的表示(而十二进制就是输出字符之类的)

dec是十进制 如cout<<dec<<b 就会把b转换成10进制再输出

hex是16进制 如cout<<dec<<b 就会把b转换成16进制再输出

*oct是8进制 如cout<<dec<<b 就会把b转换成8进制再输出

还有点就是对bool值更深的认识,前面已经讲完了,这里就不多说了。

4.6c++之namespace

其实我觉得namespace和c的数据类型很像,所以就比较好理解。

如果是写X::y那就不需要些using namespacex;(这个猜想在后面的教程里得到了肯定)

用了using namespaceB 接下来没有指定是用哪一个就是默认指定的是B里面的东西

疑问:那我能够同时写using namespaceA using namespaceB吗,如果是这样的话,那他会怎么判断我默认的是哪一个呢? 还未解决的问题

之后的一点内容也就是让我理解更加深刻,更加熟练,并没有太多的感想感悟。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: