与LSGO一起学“第2章 做一个简短的C++程序(2.3 std::介绍)”
来源:互联网 发布:淘宝怎么刷信誉和销量 编辑:程序博客网 时间:2024/06/08 13:55
2.3 std::介绍
在上节的学习中,我们发现在cout和endl之前总有个std::
这个std::到底是什么呢?
std::是个命名空间标识符,C++标准库中的函数或者对象都是在命名空间std中定义的,所以我们要使用标准库中的函数或者对象都要用std来限定。
接下来就很好理解了,对象cout是标准库所提供的一个对象,而标准库在名称空间中被指定为std,所以在使用cout的时候前面要加上std::。这样编译器就会明白我们调用的cout是命名空间std中的cout。
至于为什么将cout放到命名空间std中,是因为像cout这样的对象在实际操作中或许会有好多个,比如说你自己也可能会不小心定义了一个对象叫cout,那么这两个cout对象就会产生冲突,关于这个问题第2.5节还要说明,这里就不再多说了。
那么std都是在什么时候使用?
一般来说,std都是要调用C++标准库时使用。
如:使用标准库文件iostream时,要写上std;使用非标准库文件iostream.h,不用写。关于这一点第2.5节还有详细的讲述。
程序演示1:
#include<iostream>
using std::cout;
using std::endl;
int main()
{
cout<<"信息一班数学成绩表\n";
cout<<"首先是第一名张三丰的成绩:\t"<<100;
cout<<endl;
cout<<"其次是第二名张无忌的成绩:\t"<<90+9;
cout<<endl;
cout<<"最后是末一名周伯通的成绩:\t"<<(float)5/8;
cout<<endl;
return 0;
}
程序演示2:
#include<iostream>
usingnamespace std;
int main()
{
cout<<"信息一班数学成绩表\n";
cout<<"首先是第一名张三丰的成绩:\t"<<100;
cout<<endl;
cout<<"其次是第二名张无忌的成绩:\t"<<90+9;
cout<<endl;
cout<<"最后是末一名周伯通的成绩:\t"<<(float)5/8;
cout<<endl;
return 0;
}
using std::cout;
using std::endl;
细心的同学会发现,在main函数的上面使用了以上两行语句,那么cout和endl前面就不用加std::了。
usingnamespace std;
其实我们还有种更加简便的方法,就是直接使用using namespace std来代替using std::cout和std::endl。
using namespace std告诉编译器我们将要使用命名空间std中的函数或者对象。
所以cout和endl前面不用注明它们是std这个命名空间中的cout和endl。
- 与LSGO一起学“第2章 做一个简短的C++程序(2.3 std::介绍)”
- 与LSGO一起学“第2章 做一个简短的C++程序(2.6 注释)”
- 与LSGO一起学“第2章 做一个简短的C++程序(2.2 输出语句的使用)”
- 与LSGO一起学“第2章 做一个简短的C++程序(2.5 重名问题)”
- 与LSGO一起学“第2章 做一个简短的C++程序(2.1简单的屏幕输出小程序)”
- 与LSGO一起学“第2章 做一个简短的C++程序(2.4 iostream与iostream.h的区别)”
- 与LSGO一起学“第1章 初识C++(1.2 C++的发展过程)”
- 与LSGO一起学“第1章 初识C++(1.1 C++简介)”
- 与LSGO一起学“第1章 初识C++(1.6Visual Studio 2010编译器)”
- 与LSGO一起学“第1章 初识C++(1.5 C++与其他语言的区别)”
- 与LSGO一起学“第1章 初识C++(1.4学习C++之前需要先学C吗?)”
- 与LSGO一起学“第1章 初识C++(1.3 C++与C有什么不同)”
- 第二章 从一个最简短的C++程序讲起
- 【跟我一起学Unity3D】做一个2D的90坦克大战之地图编辑器
- 【跟我一起学Unity3D】做一个2D的90坦克大战之AI系统
- 《父与子的编程之旅-与小卡特一起学python》第18章
- 跟我一起学C语言(第五天)
- 跟我一起学C语言(第七天)
- javaweb--Servlet开发
- 与LSGO一起学“第2章 做一个简短的C++程序(2.2 输出语句的使用)”
- 初学mysql总结(1)
- HDU 2151 Worm
- 接口 Iterable ,类是 Iterator
- 与LSGO一起学“第2章 做一个简短的C++程序(2.3 std::介绍)”
- Lua_第19章 String 库(下)
- 新东西015--AS下gradle参数解析
- Android面试题集锦二
- 与LSGO一起学“第2章 做一个简短的C++程序(2.4 iostream与iostream.h的区别)”
- PAT (Advanced Level) Practise 1093 Count PAT's (25)
- 与LSGO一起学“第2章 做一个简短的C++程序(2.5 重名问题)”
- 数据挖掘算法-Logistic回归
- [leetcode]Single Number II