卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章66926本站已运行427

使用命名空间 std :)

使用命名空间 std :)

c++++ 中的命名空间是一种将代码组织成逻辑组的方法,并通过为函数、类和变量等标识符创建不同的范围来防止名称冲突。它有助于管理库并避免大型项目中的命名冲突。


让我们用一个类比来理解这一点:

书店的比喻

书籍:
想象一下一家书店,里面有各种主题的书籍。每本书都有一个唯一的标识符,即类别号,以将其与其他书籍区分开来。在这个比喻中:

书籍就像c++中的函数、类和变量。
类别编号就像命名空间。

部分:
书店分为不同的部分,每个部分包含特定主题的书籍。例如:

数学部分
文学部分
故事区


现在让我们适应这个例子:

std 命名空间作为一个节

将 std 命名空间视为该书店中的标准部分。它有这样的书:

iostream用于输入和输出
向量用于动态数组
string 用于文本字符串

要使用 std 部分的书:

#include <iostream>

int main() {
    std::cout 


<p>上面的代码类似于说,<strong>“我想读这本书<br>
cout 和 endl 来自书店的 std 部分”</strong></p>
<h2>
  
  
  仅来自标准部分的书籍:
</h2>

<p>如果你觉得每次从std借书区借书都要指定栏目名称很繁琐,你可以说:</p>

<p><strong>“我主要从std部分借书”</strong><br></p>

<pre class="brush:php;toolbar:false">#include <iostream>

using namespace std;

int main() {
    cout 




<hr>
<h2>
  
  
  c++ 中的其他部分/命名空间:
</h2>

<h2>
  
  
  提升命名空间:
</h2>

<p>boost 部分包含扩展<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/74427.html" target="_blank">标准库</a>功能的高级书籍。<br>
书籍:智能指针、正则表达式、线程等<br></p>

<pre class="brush:php;toolbar:false">#include <boost>
#include <iostream>

int main() {
    boost::shared_ptr<int> ptr(new int(10));
    std::cout 



<h2>
  
  
  自定义命名空间:
</h2>



<pre class="brush:php;toolbar:false">namespace Drawing {
    void drawCircle() {
        std::cout



<h2>
  
  
  知识
</h2>

<p><strong>库:</strong> <vector>、<iostream>、<string> 等<br><strong>命名空间:</strong> std、boost 等<br><strong>功能:</strong>cout、cin等</string></iostream></vector></p>


<hr>
卓越飞翔博客
上一篇: golang的框架如何通过桥接模式实现代码复用?
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏