下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

介绍在C++中可以命名的几种元素

作者:课课家教育     来源: http://www.kokojia.com点击数:998发布时间: 2016-11-26 08:00:53

标签: C++编译器代码行

大神带你学编程,欢迎选课

  今天我们要学习的教程是——介绍在C++中可以命名的几种元素。为什么小编要编写这篇教程呢?那是因为小编认为在软件开发这一高度抽象而且又十分复杂的活动中,命名规则的重要性更显得尤为突出。事不宜迟,现在我们就一起来学习一下吧。

  一、几种元素

  在C++程序中,也有很多元素都有用来表示它们的名称(也有人称之为标识符)。标示符(IDentifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义。在C++编程语言中,那么有哪几种元素是可以进行命名的呢?这几种元素分别是什么呢?现在小编就为你们一一解答吧。在C++中主要5种元素可以命名,分别是变量、标签、函数、命名空间以及类型。详细请参考下文:

  ①变量:变量是内存中的指定区域,它主要是用于存储数据项。它是计算机语言中能储存计算结果或能表示值抽象概念。

  ②标签:标签为我们开发人员提供了表示特定语句的方式,不过一般来说它们还是比较少用到的。

  ③函数:函数是一个自包含的、可执行代码的命名块。从本质意义上来说,函数就是用来完成一定功能的。

介绍在C++中可以命名的几种元素_C++_编译器_代码行_课课家

  ④命名空间:命名空间就是用一个集合名称标识程序中一组命名项的方式,也有人称之为"名称空间"、"名字空间"。可能就这样听起来还会让人混淆,但是大家不用担心,小编在教程的后面也会稍微为大家简单介绍一些命名空间的。

  ⑤类型:类型是一种可以存储的数据种类。比如说:int类型就是用来存储整数的。

  在很多的现代C++编译器中,名称(即标识符)只可以包含一下这些东西:下划线、0~9的数字以及大小写字母。在ANSI标准中还允许在名称中包含通用字符集(Universal Character Set)(稍后小编也会为大家介绍的)中的字符,但是一般来说都是不需要这项功能的。

  大家要注意一点,那就是名称就一定要由所允许的字符来组成,千万不要尝试着在名称的中间加上一些空白字符(比如说:制表符、空格等)。要不然的话,编译器就不会将这个名称看做是一个名称,而是将它看做成了两个名称,这样就会导致了出现处理不正确的情况了。另外还有一个限制,那就是名称不可以是从数字开头。为了加深大家对其的理解,小编特意找了一些例子来说明一下,分别是合法的以及不合法的名称例子。

  ①首先我们先来看一看不合法的名称例子,例子如下:

  8Ball Mary-Ann Betty May Earth-weight 2PI

  ②下面就是一些合法的名称例子,例子如下:

  value2 Mephistopheles BettyMay Earth_weight PI

  小编提示:

  一般来说,在程序中是不应该使用这类型的名称。比如说:包含两个下划线的名称,又或者是以下划线开头,然后后面紧跟着一个大写字母的标识符,这些都是C++标准库的保留名称。所以编译器是不会进行检查这一类型名称的,用户只可以在程序出错的时候,然后就发现有一个冲突的名称。

  二、命名空间

  好了,接下来我们来了解一下何谓命名空间呢?一般情况下,我们在一个简单C++程序中,有一行代码是并没有进行解释的。那么为了可以更加深入的理解这行代码,所以我们就应该知道何谓命名空间。为了可以说明一下命名空间的含义,下面我们先来讨论一下名称。在C++程序中,我们通常可以看见以下这一行代码,具体的代码行如下:

  using namespace std;

  其实小编觉得命名空间的名称有一点点像姓氏一样。在一个家庭中,每一个成员都会拥有自己的姓名。在大多数的家庭中,每一个家庭成员都会有着惟一一个的名字。比如说,在Smith的家庭中,就拥有以下的家庭成员:Jill、Jean、Jack以及Jonah。那么在每一个家庭成员之间,都会使用名字来指代每一个人。但是我们要注意到一点,那就是有可能在其他家庭的成员会与Smith家的成员拥有着一模一样的名字。又比如说:在Jones的家庭中,就拥有以下的家庭成员:John、Jeremiah、Jean以及Jonah。那么Jeremiah和Jones两个人在称呼Jean的时候,显然指的就是JeanJones。假如说他想指代Smith家庭中的Jean成员的话,那么就要使用JeanSmith的全名了。假如都不是这两个家庭的成员,那么就只可以使用每一个人的全名来指代他自己本人了,比如说JonahJones或者是JackSmith。

  小编刚刚讲述的就是命名空间的作用,命名空间的名称有一点点像姓氏一样。在命名空间的内部,可以使用其成员的名字。但是,如果是在命名空间的外部,表示这个命名空间中的实体,那么就只可以将某一个实体的名字以及命名空间的名称组合起来。那么命名空间的目的究竟是什么呢?其实就是为了可以提供一种机制,这样就可以让大程序的每一个部分中,因为出现重名情况而导致冲突的可能性降到最低了。在一般情况下,一个程序中可以包含几个不同的命名空间。

  其实大家都应该知道,在C++标准库中的实体都是在命名空间std中进行定义的,所以标准库中的所有实体名都应该使用std来进行限定。cout的全名就是std::cout,在全名中有两个冒号,其实它有一个十分好听的名称,那就是叫做:范围解析运算符,稍后小编也会为大家介绍的。大家可以看到,在这个例子中,这个运算符将命名空间的流的名称cout以及名称std分隔开来写的。

  其实在这个简单的C++程序中,开头代码行的指令using就是用来表示我们所希望在每一次引用命名空间std中的元素的时候,不指定命名空间的名称。继续前面的类推,这样就可以让程序文件成为std家族的一组荣誉成员了,就可以仅仅只使用名字来进行引用每一个成员了。那么这样做有什么优点呢?它的其中一个优点就是可以不需要将cout表示成为std::cout。这样会使得程序的代码变得更加的简单。假如说有人想要省略指令using,那么我们就一定要将输出语句编写成为以下的格式,具体的代码如下:

  std::cout <<"The best place to start is at the beginning";

  小编结语:

  今天的教程“介绍在C++中可以命名的几种元素”,小编就已经介绍完毕了,大家都理解清楚了吗?如果你也有这样的需要,那就赶快来学习一下吧。更多更全面的编程语言教程,尽在课课家教育。

赞(10)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程