c – 命名空间到底是什么,为什么有必要

前端之家收集整理的这篇文章主要介绍了c – 命名空间到底是什么,为什么有必要前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我现在正在学习C,在每个项目的开始阶段,我的讲师都会说:
using namespace std;

据我所知,它使您不必调用包含头名称的头文件中的函数,如iostream :: stdout,而只需调用stdout.

但这条线究竟告诉C做什么.什么是命名空间,什么是std?

除了python之外,我也是编程新手,所以切换到一个新的范例对我来说非常困惑.

解决方法

来自cppreference.com:

Namespaces provide a method for preventing name conflicts in large
projects.

Symbols declared inside a namespace block are placed in a named scope
that prevents them from being mistaken for identically-named symbols
in other scopes.

Multiple namespace blocks with the same name are allowed. All
declarations within those blocks are declared in the named scope.

命名空间可以避免名称冲突,例如标准库定义了sort(),但这对于排序函数来说是一个非常好的名称,这要归功于您可以定义自己的sort()的名称空间,因为它不在同一名称空间中作为标准的.

using指令告诉编译器在当前作用域中使用该命名空间,这样就可以了

int f(){
    std::cout << "out!" << std::endl;
}

要么:

int f(){
    using namespace std;
    cout << "out!" << endl;
}

当你从另一个命名空间中使用很多东西时,它很方便.

来源:Namespaces – cppreference.com

猜你在找的C&C++相关文章