• C++入门篇(命名空间和C++中输出输入的介绍)


      个人主页:欢迎大家光临——>沙漠下的胡杨

      各位大帅哥,大漂亮

     如果觉得文章对自己有帮助

     可以一键三连支持博主

     你的每一分关心都是我坚持的动力

     

     ☄: 本期重点:C++中我们基础的一些知识点总结

      希望大家每天都心情愉悦的学习工作。 


     ☄: 本期重点:C++中我们基础的一些知识点

    C++的第一个程序:

    C++的命名空间:

    命名空间是什么?

    为什么要有命名空间呢?

    怎么创建命名空间呢?

    不同文件下的同一个命名空间问题:

    命名空间的使用:

    C++的输入输出


     

    C++的第一个程序:

    1. #include
    2. int main()
    3. {
    4. std::cout << "hello world" << std::endl;
    5. return 0;
    6. }

    我们第一个C++程序已经写好了,但是我们有很多疑惑的地方?

    比如上面的包含的库,为什么没有 .h 了呢?为什么我们输出时要用 std::cout << "hello world"<< std::endl,这个和C语言的东西不太一样啦?带着这些疑惑我们进入下面的学习中,来得到答案吧!

     

    C++中我们使用C++的库就不需要以.h结尾了,为了和C语言作区分。因为我们C++是兼容C语言的,C语言的库我们以 .h 结尾。

    C++的命名空间:

    命名空间是什么?

           简单来说,就是一个域,像是全局域,局部域一样的一个域,我们创建了一个命名空间,就是创建一个域,在域中我们可以创建变量,函数,和类型。在域中创建的所有东西,都属于这个命名空间域。

    为什么要有命名空间呢?

           在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。
     

    怎么创建命名空间呢?

          我们要是用关键字namespace + 命名空间的名字,我们可以在命名空间中存放变量,函数,类型和另一个命名空间。如下:

    1. namespace HuYang
    2. {
    3. int a = 0;
    4. char b = '0';
    5. int Add(int x, int y)
    6. {
    7. return x + y;
    8. }
    9. struct ListNode
    10. {
    11. struct ListNode* next;
    12. int val;
    13. };
    14. namespace Shuxia
    15. {
    16. double c = 1.102;
    17. char a[100] = { 0 };
    18. int Sub(int m, int n)
    19. {
    20. return m - n;
    21. }
    22. }
    23. }

    不同文件下的同一个命名空间问题:

           在不同文件下的名字相同的命名空间。会合并在一起,例如我们在test.c中创建一个命名空间叫做HuYang ,在test.h中也创建一个命名空间,名字也叫作HuYang,那么最后编译的过程中,这两个名字一样的命名空间会合并为一个命名空间。

    命名空间的使用:

           我们使用命名空间的方法一般有三种:

    1.我们直接把命名空间的内容全部展开,然后我们就可以直接使用啦。

           例如:using namespace std ,首先 std  是我们C++标准库,包含我们C++官方的内容,例如cout等等,我们直接使用这种方法相当于直接把 std 库中的所有东西展开到了全局域,这样我们在定义时就比较麻烦,可能会定义变量或者函数和库中的冲突。(不推荐)

    1. using namespace std;
    2. int main ()
    3. {
    4. cout<< "hello C++"<
    5. return 0;
    6. }

    2. 正常情况下,我们只需要把部分常用的东西从标准库中引入到作用域中。

          例如:using  std :: cout   using std :: endl   这两局代码实际上就是把 std 中的cout和endl引入全局域中,我们也可以直接使用了。(常用,比较推荐)

     

    1. using  std :: cout;
    2. using std :: endl;
    3. int main ()
    4. {
    5. cout<< "hello C++"<
    6. return 0;
    7. }

    3. 最为标准的用法是,采用命名空间 + 域作用限定符。 

         例如:std :: cout,  std::endl   (使用比较麻烦)

    1. namespace HuYang
    2. {
    3. int a = 10;
    4. }
    5. int main ()
    6. {
    7. std::cout << HuYang::a<
    8. return 0;
    9. }

    C++的输入输出

    C++的输入是cin ,输出是cout,我们发现 cout 和 printf 函数有点不同,这个 cout 好像我们没有给他格式,比如上面,我们没有说要按照字符串输出,但是它依然能够输出“hello world”这个字符串,为什么呢?那么cin是不是也不需要我们给他格式或者类型呢?

      

    下面的是对C++输入输出的介绍:

    1. 使用cout标准输出对象(控制台)和cin标准输入对象(键盘)时,必须包含< iostream >头文件以及按命名空间使用方法使用std。
    2. cout和cin是全局的流对象,endl是特殊的C++符号,表示换行输出,他们都包含在包含< iostream >头文件中。
    3. <<是流插入运算符,>>是流提取运算符。
    4. 使用C++输入输出更方便,不需要像printf/scanf输入输出时那样,需要手动控制格式,C++的输入输出可以自动识别变量类型。
    5. 实际上cout和cin分别是ostream和istream类型的对象,>>和<<也涉及运算符重载等知识,这些知识我们我们后续才会学习。
     

    总的来说,我们现在还对这些知识很陌生,随着后面的学习我们才会有更多的理解,但是我们今天知道,在C++中输入输出都可以自动识别类型,不需要我们进行传递格式了。

     

    例:

    1. int main()
    2. {
    3. int a;
    4. char b;
    5. double c;
    6. std::cin >> a;
    7. std::cin >> b;
    8. std::cin >> c;
    9. std::cout << a << std::endl;
    10. std::cout << b << std::endl;
    11. std::cout << c << std::endl;
    12. return 0;
    13. }

     

    今天就到这里结束啦!

     

  • 相关阅读:
    电气滑环更换原因分析
    Mysql 中的性能调优方法
    C# 中什么是重写(子类改写父类方法)
    python多进程使用
    A Guide to Java HashMap
    Java ”框架 = 注解 + 反射 + 设计模式“ 之 注解详解
    SpringBoot集成Session详解
    SQL语言(一)数据查询
    大龄程序员如何面对“中年危机”?这份书单或许能帮到你
    LeetCode 2354. 优质数对的数目 二进制01表示和集合之间的转换
  • 原文地址:https://blog.csdn.net/m0_64770095/article/details/125834614