C++关于using std::cout的问题
答案:4 悬赏:20 手机版
解决时间 2021-03-29 17:30
- 提问者网友:半生酒醒
- 2021-03-28 21:54
C++关于using std::cout的问题
最佳答案
- 五星知识达人网友:平生事
- 2021-03-28 22:35
(1)如果你是用的编译器支持最新ansi标准和非最新ansi标准,那么,这的却没什么区别。
(2)如果你的编译器只支持最新c++ansi标准,那么差别主要在于作用域。大括号内的,作用于大括号内所有语句块;大括号外的,作用于包括main函数在内的所有语句块。
(3)你可以通过调用函数来证明这一点。
// Program 1.1A A simple C++ program
#include
using std::cout;//改行tsd::cout在iostream中,故应该写在这里
void coout();
int main() {
coout();//调用函数
return 0;
}
void coout()//语句块
{
cout << "The best place to start is at the beginning\n";
}
// Program 1.1A A simple C++ program
#include//此程序在编译过程中将报错
void coout();
int main()
{
using std::cout;
coout;//调用函数
return 0;
}
void coout()
{
cout << "The best place to start is at the beginning\n";
}
运行一下,你就会发现问题
(3);使用using std::cout可行。
(2)如果你的编译器只支持最新c++ansi标准,那么差别主要在于作用域。大括号内的,作用于大括号内所有语句块;大括号外的,作用于包括main函数在内的所有语句块。
(3)你可以通过调用函数来证明这一点。
// Program 1.1A A simple C++ program
#include
using std::cout;//改行tsd::cout在iostream中,故应该写在这里
void coout();
int main() {
coout();//调用函数
return 0;
}
void coout()//语句块
{
cout << "The best place to start is at the beginning\n";
}
// Program 1.1A A simple C++ program
#include
void coout();
int main()
{
using std::cout;
coout;//调用函数
return 0;
}
void coout()
{
cout << "The best place to start is at the beginning\n";
}
运行一下,你就会发现问题
(3);使用using std::cout可行。
全部回答
- 1楼网友:上分大魔王
- 2021-03-29 00:22
两种写法都可以,using的作用范围其实与#define或者全局变量定义有些类似,都是从这个语句之后到另一个using语句或者程序块结尾或者源文件结尾之前(没有被include的情况下),所以上面两种写法的cout语句都在using的作用范围内,所以结果都一样。
using很多时候是会放在文件头的,这不是因为放在其他地方不行,而是一般这样写比较清楚,看程序的人可以在一开始就知道用的是什么命名空间或对象,也不会担心在中间发生变化。当然也不是说写在中间就不行,只要结构清晰就可以了。
using很多时候是会放在文件头的,这不是因为放在其他地方不行,而是一般这样写比较清楚,看程序的人可以在一开始就知道用的是什么命名空间或对象,也不会担心在中间发生变化。当然也不是说写在中间就不行,只要结构清晰就可以了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯