`

用其他名字来命名数组(2)

阅读更多

 

名字空间别名namespace alias 允许用一个可替代的短的或更一般的名字与一个现

有的名字空间关联起来。例如

// 提供一个更一般化的别名

namespace LIB = IBM_Canada_Laboratory;

// 提供一个更短的别名

namespace DFA = Disney_Feature_Animation;

然后,这个别名就可以用作原始名字空间的同义词。例如

#include "IBM_Canada.h"

namespace LIB = IBM_Canada_Laboratory;

int main()

{

LIB::Array<int> ia(1024);

// ...

}

别名也可以用来封装正在使用的实际名字空间。例如,在此情形下,我们可以通过改变

分配给别名的名字空间来改变所使用的声明集而无需改变通过别名访问这些声明的

实际代码。例如

namespace LIB = Cplusplus_Primer_3E;

int main()

{

// 在这种情况下下面的声明无须改变

LIB::Array<int> ia(1024);

// ...

}

但是,如果要让这项技术在实际工作中发挥作用,那么两个名字空间中的声明必须提供

同样的接口。例如,下面的代码就不能工作,因为Disney 的Array 类需要一个类型参数和一

个数组长度参数。

namespace LIB = Disney_Feature_Animation;

 

int main()

{

// 不再是一个有效的声明

LIB::Array<int> ia(1024);

// ...

}

程序员常常希望在访问名字空间内声明的名字时不加限定修饰符,即使我们已经为名字

空间标识符提供了较短的别名,在每次访问该名字空间内声明的名字时,也都要进行限定,还

是太麻烦。using 指示符using directive 使名字空间内的所有声明都可见,这样这些声明

能够不加限定地使用。例如

#include "IBM_Canada_Laboratory.h"

 

// 使所有的名字都可见

using namespace IBM_Canada_Laboratory;

int main()

{

// ok: IBM_Canada_Laboratory::Matrix

Matrix mat( 4,4 );

// ok: IBM_Canada_Laboratory::Array

Array<int> ia( 1024 );

// ...

}

using 与namespace 都是关键字,被引用的名字空间必须已经被声明了,否则,会引起编译

错误。

分享到:
评论

相关推荐

    数组和指针

    arrayName 是数组的名字,数组名命名规则和变量名相同,遵循标识符命名规则 数组名是常量,表示数组在内存中的首地址 [ ] 表明声明的变量 arrayName 是一数组 arraySize 表示数组大小,必须是大于 0 的常数,或整型...

    锯齿数组打印杨辉三角形

    在计算机科学中,杨辉三角是一种特殊的数列,它以中国数学家杨辉的名字命名。杨辉三角的每一行的第一个和最后一个元素都是1,其他元素是其上一行的两个元素之和。这是一种非常有趣的数列,它在数学和计算机科学中...

    类存储数据与变量和数组的区别(论文)

    - **命名方式**:变量、数组和方法的命名通常采用“骆驼式”命名法,即首单词首字母小写,后续单词首字母大写。类的命名则采用每个单词首字母大写的“帕斯卡式”命名法。 - **数据类型**:变量可以是基本数据类型或...

    C的指针数组和数组指针

    - **对象命名**:动态创建的对象本身没有名字,而是通过返回的指针进行访问。 - **初始化**:堆区不会自动初始化,因此需要显式地初始化新分配的对象。 - **动态数组分配**: - `T *arr = new T[size];`:用于分配...

    shell脚本编程之数组

    数组就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的元素。数组是在...

    第五章 数组.docx

    其次,指定数组的名字,这个名字需要遵循C语言的标识符命名规则,确保不与其他变量名冲突;最后,通过常量表达式来定义数组的长度。数组的长度必须是一个编译时确定的常量,因此不能使用运行时才确定的变量值来声明...

    掌握控件数组的建立和使用PPT学习教案.PPTx

    数组是一个复合数据类型,由一组具有相同数据类型的变量组成,通过一个名字和一个或多个下标来标识。数组的作用在于能够同时存储和操作一组相关的值,简化了对大量数据的管理。数组的元素可以通过数组名和下标进行...

    第七章-数组数据结构与数组的概念-影响程序设计的因素优秀文档.ppt

    数组是一组具有同样类型的数据的集合,统一用一个名字代表着一组数。数组元素下标数组名,数组中的各成员称数组元素,由数组名加下标唯一地确定。数组可以是一维数组、二维数组、三维数组等。 一维数组的定义和引用...

    java入门 - 数组基础-chapter06.rar

    在声明一维数组时,需要指定数组的类型和数组的名字,数组的名字需要符合Java标识符的命名规则。创建一维数组可以使用new关键字后跟数组类型和数组长度,也可以在声明数组时直接初始化。 多维数组则是数组的数组,...

    C语言程序设计:第7章 数组.ppt

    在C语言中,可以使用malloc()或calloc()函数在运行时动态分配数组,释放时用free()。这使得数组的大小可以在程序运行时确定或更改。 总的来说,数组是C语言中基础且重要的数据结构,通过理解和掌握数组的概念、声明...

    编写代码命名规范

    骆驼命名法是一种通过混合使用大小写字母来构成变量和函数名字的方法。这种方法的特点是在每个逻辑断点处使用大写字母进行标记,以区分不同的单词部分。 **例子:** - `printEmployeePaychecks()`: 使用骆驼命名法...

    vc++6.0中动态数组实现(例如string类对象数组等).pdf

    当使用`new`分配动态数组时,我们只需要指定元素的类型和数组的长度,而不需要为数组本身命名。例如: ```cpp int *pia = new int[10]; // 分配一个包含10个未初始化的int型元素的数组 ``` 这里的`new int[10]`...

    Java标识符和变量的命名规则(2)

    - 在命名时考虑到国际化的需求,尽可能使用英文或其他易于理解的语言。 #### 二、Java变量的命名规则与习惯 在了解了Java标识符的基本规范之后,接下来将重点讨论变量命名的具体规则和习惯。 1. **局部变量与...

    数组和C 风格字符串PPT学习教案.pptx

    1. **单一命名**:数组使用一个名字来标识一组数据。 2. **同种类型**:数组中的所有元素都是同一类型的。 3. **固定数量**:数组的元素数量在声明时是确定的。 4. **元素位置**:每个元素都有其特定的位置,可以...

    java编程命名规范

    数组应该总是用下面的方式来命名,例如,byte[] buffer; 而不是 byte buffer[]; 方法的参数命名规范: 使用有意义的参数命名,如果可能的话使用和要赋值的字段一样的名字。例如,SetCounter(int size){ this.size =...

    计算机软件及应用第5章数组PPT学习教案.pptx

    数组标识符是数组的名字,遵循变量命名规则。常量表达式则指定数组的长度,必须是编译时常量。 数组元素的下标从0开始,例如一个包含10个元素的数组a,其下标范围为a[0]到a[9]。数组名本身表示数组首元素的地址,不...

    Java语言基础入门教程 Java开发编程基础课程 第5章 数组 共8页.pptx

    例如,我们可以用数组来存储学生名单、成绩列表等。 #### 二、一维数组 ##### 创建一维数组 在Java中,声明一维数组时需要指定数组元素的数据类型,并为数组命名。可以通过以下两种语法形式: 1. **数组元素类型...

    软件编程命名规则

    本文将详细介绍一种软件编程中的命名规则,并通过具体的例子来帮助理解和应用。 #### 二、命名规则的重要性 1. **提高软件质量**:良好的命名规范有助于减少错误和bug的发生概率,因为清晰明了的命名可以降低误解的...

    良好代码从命名开始

    3. 在布尔值和状态变量的命名中,应尽量避免使用模糊的“是/否”命名,而使用更具描述性的名字。 4. 避免使用泛泛的、没有明确意义的命名,如`tmp`和`retval`。 5. 对于循环迭代器的命名,可以采用有描述性的命名,...

Global site tag (gtag.js) - Google Analytics