成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C++程序中可以命名的5種元素

開發 后端
在大多數現代C++編譯器中,名稱只能包含大小寫字母、下劃線和0~9的數字。ANSI標準還允許在名稱中包含通用字符集(Universal Character Set)(稍后介紹)中的字符,但一般不需要這項功能。

C++程序中的許多元素都有用來表示它們的名稱(也稱為標識符)。在C++程序中,可以命名的5種元素是:

(1) 函數。函數是自包含的、可執行代碼的命名塊。第8章將詳細討論如何定義函數。

(2) 變量。變量是內存中的指定區域,用于存儲數據項。第2章將論述變量。

(3) 類型。類型是可以存儲的數據種類。例如類型int用于存儲整數。第2章和后續的章節將介紹類型,尤其是第11和12章。

(4) 標簽。標簽提供了表示特定語句的方式。它們很少使用,第4章將詳細介紹。

(5) 命名空間。命名空間是用一個集合名稱標識程序中一組命名項的方式。這聽起來可能讓人混淆,但不必擔心,稍后就介紹命名空間,第10章將詳細論述。

在大多數現代C++編譯器中,名稱只能包含大小寫字母、下劃線和0~9的數字。ANSI標準還允許在名稱中包含通用字符集(Universal Character Set)(稍后介紹)中的字符,但一般不需要這項功能。

名稱必須由允許的字符組成,不要在名稱的中間加上空白字符(空格、制表符等),否則,編譯器就不會把該名稱看做是一個名稱,而是看做兩個名稱,從而導致處理不正確。另一個限制是名稱不能以數字開頭。下面是一些合法的名稱例子:

value2 Mephistopheles BettyMay Earth_weight PI

下面的名稱就不合法:

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

提示:

包含兩個下劃線的名稱,或者以下劃線開頭,后跟一個大寫字母的名稱,是C++標準庫的保留名稱,在程序中不應使用這類名稱。編譯器不會檢查這類名稱,用戶只能在程序出錯時發現有一個沖突的名稱。

我們將在使用名稱時進一步討論它們,第2章討論變量時就開始討論名稱。

命名空間

在上面的簡單C++程序中,有一行代碼沒有解釋。為了理解這行代碼,需要知道什么是命名空間。為了說明命名空間的含義,下面先討論名稱。上面C++程序中還沒有解釋的代碼行如下:

 

  1. using namespace std; 

 

命名空間的名稱有點像姓氏。家庭中的每個成員都有自己的姓名,在大多數家庭中,每個家庭成員都有一個惟一的名字。在Smith家中,有Jack、Jill、Jean和Jonah。在家庭成員之間,用名字來指代每個人。但是,其他家庭的成員可能與Smith家的成員有相同的名字。例如,在Jones家中,其成員的名字是John、Jean、Jeremiah和Jonah。Jeremiah Jones在稱呼Jean時,顯然是指Jean Jones。如果他想指代Smith家中的Jean,就要使用全名Jean Smith。如果不是這兩個家庭的成員,就只能使用每個人的全名來指代他本人,例如Jack Smith或Jonah Jones。

這就是命名空間的作用。命名空間的名稱類似于姓氏。在命名空間內部,可以使用其成員的名字。在命名空間的外部,就只能把某個實體的名字和命名空間的名稱組合起來,表示該命名空間中的實體。命名空間的目的是提供一種機制,使大程序的各個部分中因出現重名而導致沖突的可能性降到最低。一般情況下,一個程序中包含幾個不同的命名空間。

C++標準庫中的實體都是在命名空間std中定義的,所以標準庫中的所有實體名都用std來限定。cout的全名就是std::cout,其中的兩個冒號有一個非常好聽的名稱:范圍解析運算符,稍后詳述。在這個例子中,該運算符把命名空間的名稱std和流的名稱cout分隔開來。

在這個簡單的C++程序中,開頭的using指令表示我們希望在每次引用命名空間std中的元素時,不指定命名空間的名稱。繼續前面的類推,使程序文件成為std家族的一組榮譽成員,就可以只用名字來引用每個成員了。其優點之一是不需要把cout表示為std::cout,這樣程序代碼就更簡單。如果省略using指令,就必須把輸出語句寫為:

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

【編輯推薦】

  1. 淺談C/C++中的順序點和副作用
  2. 淺談C/C++中的static和extern關鍵字
  3. C++中的指針用法匯集
  4. 階乘相關的算法及其C++實現
責任編輯:于鐵 來源: 中國IT實驗室
相關推薦

2025-05-20 10:00:00

C++命名空間別名代碼

2010-01-25 18:15:52

2010-01-22 14:53:21

2010-01-25 14:56:08

C++程序

2009-05-22 11:01:53

C++JavaC#

2010-01-13 13:36:54

C++應用程序

2023-10-31 19:00:56

2010-01-21 09:34:57

C++語法

2010-01-27 16:05:06

C++堆棧

2010-01-25 16:58:15

C++程序

2010-01-21 14:07:14

CC++聲明

2010-01-20 10:19:55

C++數組

2010-01-25 10:25:19

C++變量

2010-01-27 17:16:52

C++構造函數

2010-01-28 16:31:54

C++類型

2010-01-21 13:33:44

C++基類

2020-08-21 13:20:36

C++If ElseLinux

2010-01-26 10:42:26

C++函數

2024-05-21 14:04:16

2023-09-27 23:24:50

C++鏈表
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 玖玖视频免费 | 欧美成人h版在线观看 | 成人一区二区三区视频 | 国产成人麻豆免费观看 | 91在线视频免费观看 | 久久久青草婷婷精品综合日韩 | 日韩成人免费视频 | 日本精品一区二区 | 天天看天天操 | 成av在线 | 久久精品1| 99热激情 | 韩三级在线观看 | 日韩国产黄色片 | 日韩在线视频播放 | 日韩欧美三级在线 | 人人澡视频 | 成人亚洲视频 | 欧美精品成人一区二区三区四区 | m豆传媒在线链接观看 | 国产成人短视频在线观看 | 一级大片 | 成人a视频片观看免费 | 成av在线 | 91亚洲精品久久久电影 | 成人免费福利 | 中文字幕久久精品 | 99精品福利视频 | 国产一区二区三区 | 91在线精品一区二区 | 亚洲一区二区中文字幕 | а_天堂中文最新版地址 | 久久一区 | 国产精品视频一区二区三区, | 国产99久久久国产精品 | aaa在线| 欧美高清免费 | 亚洲一区二区三区四区五区午夜 | 精品一区二区三 | 中文精品视频 | www.久|