C++初阶 入门

这篇具有很好参考价值的文章主要介绍了C++初阶 入门。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 

目录

1.用C++的方式写一个Hello World

2.命名空间

2.1什么是命名空间?

2.2使用命名空间

3.C++的输入输出 


前言:C++初阶系列,每一期博主都会使用简单朴素的语言将对应的知识分享给大家,争取让所有人都可以听懂,C++初阶系列会持续更新,上学期间将不定时更新,但总会更的

1.用C++的方式写一个Hello World

#include<iostream>//1
using namespace std;//2
int main()
{
	cout <<"Hello World"<<endl;//3
}

C++初阶 入门,C++初阶,c++,开发语言,算法

我们逐步逐步的分析这几串代码,#include<iostream>引用对应的流头文件,使得我们的一些输入输出命令可以使用。

而下面这段using namespace std;是什么意思呢?相信不少初学者在老师上课的时候总会有这种疑惑,但老师总会来一句,你们就先用着到时再说这个,这就令人有点膈应。接下来就由博主来给大家讲解一下对应的知识:命名空间

2.命名空间

2.1什么是命名空间?

在我们学习语言的过程中,你们是否想过,未来有一天,我参加了一个项目,项目里有算上你有3个程序员,你们要分模块化进行代码的编写从而实现一款2D像素小游戏,小A他负责装备特性和炫酷技能的编写,小B负责人物之间的交互,而你负责战斗模块的编写。小A在他的代码里写了一个变量叫fight,寓意着战斗力,来直观地让玩家明白装备的差别。而你在你的模块中也写了一个fight,代表着战斗进行的回合数。那么,一旦项目合并在一起,两个fight就会出现冲突,编译器不知道该选择哪个fight进行使用,这时候怎么办呢?在c中这种问题是没办法很好地解决的,只能是你们中的一人选择退让并将对应的变量名进行修改,在C++中就可以通过命名空间的方式来很好地杜绝这一行为。

使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。

2.2使用命名空间

C++初阶 入门,C++初阶,c++,开发语言,算法

众所周知,C++是基于C进行升级的编程语言,因此在C上的各种代码依然是可以在C++上跑的。如图所示,我们像写C的时候包两个头文件,再定义一个全局变量rand,之后使用printf函数队rand的值进行打印,但在 C上能跑的代码现在就出现了问题,"rand重定义,以前的定义是函数",也就是说,我们的命名与前人在头文件中写的函数名字出现了冲突。这个时候我们就可以使用命名空间来解决问题。

#include<stdio.h>
#include<stdlib.h>
namespace abc
//创建一个名字叫abc的空间
{
	int rand = 10;
}
int main()
{
	printf("%d ", rand);
}

C++初阶 入门,C++初阶,c++,开发语言,算法

哎,怎么回事啊,怎么是这个奇奇怪怪的东西呀,我不是要打印出10吗?别慌,首先呢这一大串是对应函数的地址,而之所以是对应函数的地址是因为,我们创建命名空间就像是在自己家外建立了一块围墙    有人想进来找东西,那肯定得要有钥匙,而没钥匙自然只能去墙外面找。而编译器在墙外找到了一个叫rand的函数,自然就把它用起来了。

那么我们要怎么才能进入到对应命名空间中取出对应的变量呢?使用域名限定符::即可

空间名+域名限定符+变量名     就可以访问到对应命名空间对应的变量

C++初阶 入门,C++初阶,c++,开发语言,算法

 这个时候又有小机灵鬼想到了一个超级代码,我在自己的命名空间中再定义一个同名的rand,别问我为什么,我就是想要这么多个rand,好好好,写的好啊。那么这个时候我们要回避命名冲突的问题,我们就可以使用嵌套命名空间的方式,是的,你没有听错,命名空间是可以嵌套的。

C++初阶 入门,C++初阶,c++,开发语言,算法

访问的方式也大同小异,可理解为先访问abc空间,再访问a(b)空间,再在里面去查找对应的值

超级小机灵鬼还不满意,又问"那么命名空间的名字相同会发什么什么呢?"答案是会合并在一起,这两块空间将会被编译器视为同一块空间,你在里面存放变量,会被存放到同一块空间中。

C++初阶 入门,C++初阶,c++,开发语言,算法

那么回到最开始,我们的那个using namespace std 是什么意思呢,std是C++官方库定义的命名空间。using namespace std 的含义就是展开std空间的内容,令std库中的内容展开,这样就不需要使用域作用限定符来进入空间,因为空间中的内容已经被展开了。

C++初阶 入门,C++初阶,c++,开发语言,算法

3.C++的输入输出 

using namespace std讲完以后我们来讲一下C++的输入输出,cout 是console out 的缩写,意思是朝着控制台输出,而<<是流插入运算符,你可以把它看作将数据从右边往左边流入,然后再在控制台输出,那么cout<<"Hello World"就可以看作将Hello World 这个字符串流入到控制台中并打印,而endl 是end line 的缩写,意思是结束这一行,也就是换行。

C++的输出还有一点非常强大,那就是它可以自动识别数据类型,以前我们使用C的时候还得%d  %f %c,现在直接就出来了。

C++初阶 入门,C++初阶,c++,开发语言,算法

 输入的话用cin,console in 翻译过来就是控制台里面,引申一下就是从控制台中取数据,所以cin>>变量名 便是从控制台中取数据并使对应变量修改成控制台上的数据。

C++初阶 入门,C++初阶,c++,开发语言,算法

好了,今天的分享到这里就结束了,感谢各位友友的来访和阅读,祝各位友友们前程似锦O(∩_∩)O 文章来源地址https://www.toymoban.com/news/detail-726444.html

到了这里,关于C++初阶 入门的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++初阶之C++入门最全详解

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

    2024年02月16日
    浏览(42)
  • 【初阶C++】入门(超详解)

    C++是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等。熟悉C语言之后,对C++学习有一定的帮助,本章节主要目标: 补充C语言语法的不足,以及C++是如何对C语言设计不合理的地方进行优化的,比如:作用域方面、IO方面、函数方面、指

    2024年02月04日
    浏览(40)
  • C++初阶 入门

      目录 1.用C++的方式写一个Hello World 2.命名空间 2.1什么是命名空间? 2.2使用命名空间 3.C++的输入输出  前言:C++初阶系列,每一期博主都会使用简单朴素的语言将对应的知识分享给大家,争取让所有人都可以听懂,C++初阶系列会持续更新,上学期间将不定时更新,但总会更的

    2024年02月07日
    浏览(39)
  • C++初阶--C++入门

    从本章开始,我们就要正式的进入到C++的学习了。C++是在C的基础之上,容纳进去了 面向对象编程 思想,并增加了许多有用的库,以及编程范式等,同时 对C语言某些设计不合理的地方进行优化,如在作用域,IO,函数,指针以及宏方面 。下面我们先从一些较容易理解的知识

    2024年02月15日
    浏览(34)
  • C++初阶 入门(2)

    目录 一、缺省函数 1.1什么是缺省函数 1.2为什么要有缺省函数 1.3使用缺省函数 1.4测试代码 二、函数重载 2.1什么是函数重载  2.2为什么要有函数重载 2.3什么情况构成函数重载 2.4函数重载例子及代码  三、引用 3.1什么是引用 3.2如何引用 ​3.3常引用(可略过) 3.4引用和指针的对

    2024年02月08日
    浏览(35)
  • 【C++初阶】C++入门——缺省参数、函数重载

     缺省参数是 声明或定义函数时为函数的参数指定一个缺省值 。在调用该函数时,如果没有指定实参则采用该形参的缺省值,否则使用指定的实参。  上面代码在 fun 函数的形参部分给了缺省值10,这意味着在调用 fun 函数的时候可以传参,也可以不传参,如果传参了那形参

    2024年02月11日
    浏览(37)
  • 【C++初阶】---C++入门篇

    👧个人主页:@小沈YO. 😚小编介绍:欢迎来到我的乱七八糟小星球🌝 📋专栏:C++ 心愿便利店 🔑本章内容:命名空间、缺省参数 记得 评论📝 +点赞👍 +收藏😽 +关注💞哦~ C语言最初由 Dennis Ritchie 于 1969 年到 1973 年在 ATT 贝尔实验室里开发出来,主要用于重新实现 Unix 操作

    2024年02月16日
    浏览(35)
  • 【C++初阶】第一站:C++入门基础(中)

    前言: 这篇文章是c++入门基础的第一站的中篇,涉及的知识点 函数重载 : 函数重载的原理--名字修饰 引用:概念、特性、使用场景、常引用、传值、传引用效率比较的知识点 目录 5. 函数重载 (续) C++支持函数重载的原理--名字修饰(name Mangling) 为什么C++支持函数重载,而C语言

    2024年02月05日
    浏览(41)
  • 【C++初阶】第一站:C++入门基础(下)

    前言:  紧接着上两篇文章,c++入门基础(上):C++入门基础(上)                                  c++入门基础(中):C++入门基础(中)         继续补充完c++初阶入门基础的知识点,本章知识点包括:         引用和指针的区别、内联函数、auto(C++11)、基于范围

    2024年02月04日
    浏览(42)
  • 【C++初阶】C++入门——C++介绍、命名空间、输入输出

     C语言是 结构化 和 模块化 的语言,适合处理 较小规模 的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机,20世纪80年代,计算机界提出了 OOP (object oriented programming: 面向对象 )思想,支持面向对象的程序设计语言应

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包