初学者漫谈C++ 之一

1481阅读 0评论2012-02-15 图片MM
分类:

我前两个礼拜学习C++,主要是项目的需要。我的教材也很简单,也很容易找。不过是英文的,我想大部分的人是没有问题的。这个教材是免费下载的,我相信很多人都知道,下面是链接,直接可以下载。我是初学C++,有说错的地方请大家多多拍砖。



我个人觉得很不错,按耐不住激动,写点笔记,体会。今天说说基本概念。C++本来就是基于C语言,添加了类,和一些比较高级的概念,例如模板。

1. 程序的结构

和C没有什么太大的区别,说说不一样的地方。

头文件
这个我给的网站有对比,可以看看。C++基于类的继承概念,将C语言的头文件改进,使功能更强。

几乎每个程序都有个语句
using namepsace std;

这个涉及到一个新的东西,相对C而言是一个新的概念,namesapce。
namespace允许将类,对象以及函数归到一个“名”下。

std 就是这个名。std代表C++标准库的所有元素。
也就是说,有了这个语句,你就可以使用库里的东西了。

其他的我想没有什么区别了。

2. 变量,数据类型,常量,操作符基本没有什么区别
变量还是那些变量,类型还是那些类型,C怎么做,C++也怎么做。
只不过要提提string。
能够存储大于一个字符长度的变量叫做string。
C++提供了string 类,它呢不是基本类型,但是表现的和基本类型没有什么太区别,就那么用的。区别就是你用的时候不要忘了添加头文件

其他的,诸如常量,操作符就不说了,和C没有什么区别。

3. 基本的输入输出
头文件是
标准输出  cout <<
标准输入   >>cin

通俗的比方就是,cout就像显示器,输出的东西都在cout里; cin就像一个盒子(变量等),将输入的东西都扔进去了。

记住过载符 << 和>>, 箭头指向谁,谁就是数据的接收方,就要给我兜着。

这和C差不多。

不过cin只能接收输入的一个单词或数字,就是说,如果你输入的东西有空格,那么第一个空格前的东西会被扔进程序,后面的没戏。
所以就有了getline这个东西,能够将你所有输入的东西都要了。
不过,要和cin联合用,像这样:
string mystr;
cout<<"What's your name";
getline (cin, mystr);

这里还是要提提一个有用的东西stringstream
它呢也是个类,就想string。但它的目的主要是将对象当作stream来操作,这个对象自然就是基于string的对象。有什么好处呢,很简单,对它进行提取和插入操作,例如类型转换。
string mystr ("1024");
int myint;
stringstream(mystr)>>myint;

string型就成int型了。





上一篇:trilinos10.10.0的安装
下一篇:调试numpy.load()的内存泄漏