加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 命名空间用法

发布时间:2020-12-16 10:16:14 所属栏目:百科 来源:网络整理
导读:我正在尝试以正确的(或至少是最好的)方式开始使用命名空间. 我试图做的第一件事是避免使用命名空间xxx;在我的文件的开头.相反,我想尽可能在??本地使用xxx :: yyy. 这是一个小程序,说明了这一点: #include iostream#include cstdlib#include ctimeint main()
我正在尝试以正确的(或至少是最好的)方式开始使用命名空间.

我试图做的第一件事是避免使用命名空间xxx;在我的文件的开头.相反,我想尽可能在??本地使用xxx :: yyy.

这是一个小程序,说明了这一点:

#include <iostream>
#include <cstdlib>
#include <ctime>

int main() {
   using std::cout;
   using std::endl;

   srand(time(0));

   for(int i=0; i<10;++i)
      cout << rand() % 100 << endl;

   return 0;
}

如果我省略使用std :: cout的行;或者使用std :: endl,当我尝试使用cout或endl时,编译器会抱怨.

但是为什么这对于srand,rand和time来说不需要?我很确定他们是std,因为如果我尝试在他们面前专门浇注std ::我的代码工作正常.

解决方法

如果你使用cstdlib等.它们中的名称放在global和std :: namespaces中,因此您可以选择使用std ::前缀.这被某些人视为特征,并被其他人视为错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读