技术贴

C++学习笔记(2)

2015-10-07  本文已影响38人  别着急我来了

摘要:对于《C++ Primer》中出现的值得注意的名词的笔记。

流(stream):随着时间的推移,字符是顺序生成和消耗的。

操作符(manipulator):经常出现的endl,接在cout后,被称作操作符的特殊值。效果是结束当前行,并将buffer中的内容刷到设备中。这样可以保证程序所产生的所有输出都真正的写入到输入流中。

命名空间(namespace):C++引入命名空间可以帮助我们避免不经意的名字定义冲突,以及使用库中相同名字导致的冲突。标准库定义的所有名字都在命名空间std中。

作用域运算符(operator) ::
std::out 代表我们想使用定义在命名空间std中的名字cout。即编译器应从操作符(运算符)左侧名字所示的作用域中寻找右侧那个名字。
使用using声明using namespce::name即可无需专门的前缀也能使用所需的名字了。但是规定,每个using声明引入命名空间中的一个成员。
#include<iostream>
using std::cin;
using std::cout; using std::endl;
比如下面这个例子

#include<iostream>

using namespace std;

namespace MeInMyEyes
{
    char me[]  = "a Handsome good-looking generous boy";
}

namespace MeInOthersEyes
{
    char me[]  = "a Diaosi boy";
}

int main()
{
    char me[] = "a Ordinary boy";
    cout << "自己眼中的我:" <<  MeInMyEyes:: me << endl;
    cout << "别人眼中的我:" <<  MeInOthersEyes:: me << endl;
    cout << "真实的我:" << me << endl; 
    return 0;
}```
编译链接结果:
![namespace](http:https://img.haomeiwen.com/i459710/57f95f17a3d04f66.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

当我们使用一个istream对象作为条件时,其效果是检测流的状态。我们可以用以下codeblock来读取输入的未定数量的数据。
``while (std::cin >> value) ``   
上一篇下一篇

猜你喜欢

热点阅读