日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁(yè) > 編程 > C++ > 正文

高質(zhì)量C++/C編程指南(五)

2024-09-07 17:00:55
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
第5章 常量
常量是一種標(biāo)識(shí)符,它的值在運(yùn)行期間恒定不變。C語(yǔ)言用 #define來(lái)定義常量(稱為宏常量)。C++ 語(yǔ)言除了 #define外還可以用const來(lái)定義常量(稱為const常量)。

5.1 為什么需要常量
如果不使用常量,直接在程序中填寫數(shù)字或字符串,將會(huì)有什么麻煩?

(1) 程序的可讀性(可理解性)變差。程序員自己會(huì)忘記那些數(shù)字或字符串是什么意思,用戶則更加不知它們從何處來(lái)、表示什么。

(2) 在程序的很多地方輸入同樣的數(shù)字或字符串,難保不發(fā)生書寫錯(cuò)誤。

(3) 如果要修改數(shù)字或字符串,則會(huì)在很多地方改動(dòng),既麻煩又容易出錯(cuò)。

l 【規(guī)則5-1-1】 盡量使用含義直觀的常量來(lái)表示那些將在程序中多次出現(xiàn)的數(shù)字或字符串。

例如:

#define MAX 100 /* C語(yǔ)言的宏常量 */

const int MAX = 100; // C++ 語(yǔ)言的const常量

const float PI = 3.14159; // C++ 語(yǔ)言的const常量

5.2 const 與 #define的比較
C++ 語(yǔ)言可以用const來(lái)定義常量,也可以用 #define來(lái)定義常量。但是前者比后者有更多的優(yōu)點(diǎn):

(1) const常量有數(shù)據(jù)類型,而宏常量沒(méi)有數(shù)據(jù)類型。編譯器可以對(duì)前者進(jìn)行類型安全檢查。而對(duì)后者只進(jìn)行字符替換,沒(méi)有類型安全檢查,并且在字符替換可能會(huì)產(chǎn)生意料不到的錯(cuò)誤(邊際效應(yīng))。

(2) 有些集成化的調(diào)試工具可以對(duì)const常量進(jìn)行調(diào)試,但是不能對(duì)宏常量進(jìn)行調(diào)試。

l 【規(guī)則5-2-1】在C++ 程序中只使用const常量而不使用宏常量,即const常量完全取代宏常量。

5.3 常量定義規(guī)則
l 【規(guī)則5-3-1】需要對(duì)外公開的常量放在頭文件中,不需要對(duì)外公開的常量放在定義文件的頭部。為便于管理,可以把不同模塊的常量集中存放在一個(gè)公共的頭文件中。

l 【規(guī)則5-3-2】如果某一常量與其它常量密切相關(guān),應(yīng)在定義中包含這種關(guān)系,而不應(yīng)給出一些孤立的值。

例如:

const float RADIUS = 100;

const float DIAMETER = RADIUS * 2;

5.4 類中的常量
有時(shí)我們希望某些常量只在類中有效。由于#define定義的宏常量是全局的,不能達(dá)到目的,于是想當(dāng)然地覺(jué)得應(yīng)該用const修飾數(shù)據(jù)成員來(lái)實(shí)現(xiàn)。const數(shù)據(jù)成員的確是存在的,但其含義卻不是我們所期望的。const數(shù)據(jù)成員只在某個(gè)對(duì)象生存期內(nèi)是常量,而對(duì)于整個(gè)類而言卻是可變的,因?yàn)轭惪梢詣?chuàng)建多個(gè)對(duì)象,不同的對(duì)象其const數(shù)據(jù)成員的值可以不同。

不能在類聲明中初始化const數(shù)據(jù)成員。以下用法是錯(cuò)誤的,因?yàn)轭惖膶?duì)象未被創(chuàng)建時(shí),編譯器不知道SIZE的值是什么。

class A

{…

const int SIZE = 100; // 錯(cuò)誤,企圖在類聲明中初始化const數(shù)據(jù)成員

int array[SIZE]; // 錯(cuò)誤,未知的SIZE

};

const數(shù)據(jù)成員的初始化只能在類構(gòu)造函數(shù)的初始化表中進(jìn)行,例如

class A

{…

A(int size); // 構(gòu)造函數(shù)

const int SIZE ;

};

A::A(int size) : SIZE(size) // 構(gòu)造函數(shù)的初始化表

{

}

A a(100); // 對(duì)象 a 的SIZE值為100

A b(200); // 對(duì)象 b 的SIZE值為200

怎樣才能建立在整個(gè)類中都恒定的常量呢?別指望const數(shù)據(jù)成員了,應(yīng)該用類中的枚舉常量來(lái)實(shí)現(xiàn)。例如

class A

{…

enum { SIZE1 = 100, SIZE2 = 200}; // 枚舉常量

int array1[SIZE1];

int array2[SIZE2];

};

枚舉常量不會(huì)占用對(duì)象的存儲(chǔ)空間,它們?cè)诰幾g時(shí)被全部求值。枚舉常量的缺點(diǎn)是:它的隱含數(shù)據(jù)類型是整數(shù),其最大值有限,且不能表示浮點(diǎn)數(shù)(如PI=3.14159)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
亚洲免费精品| 婷婷中文字幕综合| 日韩国产一区三区| 中文字幕2020第一页| 91精品国产综合久久香蕉最新版| 欧美日韩高清在线一区| 婷婷中文字幕一区三区| 久久精品欧美日韩精品| 二区视频在线观看| 亚洲视频一二三四| 精品国产免费视频| 日韩午夜黄色| 亚洲欧美久久久| 日韩午夜一区| 欧美日韩高清| 九一久久久久久| 国产欧美日韩在线视频| 国产成人va亚洲电影| 久草视频在线看| 中文字幕中文字幕精品| 国产日韩精品电影| 亚洲羞羞网站| eeuss一区| 国产丝袜一区二区| 国产日产一区二区三区| 日韩在线观看视频一区| 在线视频三区| 欧美三级在线视频| 亚洲福利精品视频| 最新中文字幕在线| 日本亚洲欧美三级| 日韩欧美不卡| 亚洲一区三区在线观看| 91欧美日韩麻豆精品| 亚洲欧美小说国产图片| 一级片在线免费看| 国产免费一级片| 97最新国自产拍视频在线完整在线看 | 精品福利一区二区三区| 久久久精品国产99久久精品芒果| 国产日韩中文在线| 欧美日韩综合高清一区二区| 日本免费在线视频不卡一不卡二| 国精品产品一区| 精品视频1区2区3区| 日韩精品欧美| 尤物av一区二区| 亚洲欧洲国产视频| 欧美日韩精品国产| 日韩三级精品电影久久久| 国产一区高清视频| 91精品婷婷国产综合久久竹菊| 日韩三级视频在线| 精品久久香蕉国产线看观看gif| 欧美,日韩,国产在线| 国产传媒久久久| 欧美国产一区视频在线观看| 国产欧美综合视频| 亚洲第一中文字幕| 欧美国产91| 精品在线一区二区| 日韩视频第二页| 欧美日韩视频免费| 精品在线观看一区| 日韩在线一区二区| www中文字幕在线观看| 91精品视频在线| 亚洲女同中文字幕| 中文字幕在线导航| 日韩精品一二三四区| 欧美高清一级片在线| 黄色片免费在线| 午夜一区二区三区视频| 日韩欧美国产成人一区二区| 欧洲精品在线一区| 99精品视频99| 久久久精品福利| 国产日产一区二区| 91亚洲欧美| 亚洲电影中文字幕在线观看| 欧美日韩国产影片| 日韩国产亚洲欧美| 视频一区视频二区中文| 久久精品国产成人一区二区三区| 欧美 日韩 国产在线观看| 国产一级片在线| 日韩中文字幕视频网| 久久精品在线观看| 国产高潮久久久| 日韩免费精品| 91精品无人成人www| 日韩精品第一区| 精品成人久久av| 日本亚洲欧美| 久久电影国产免费久久电影| 日韩视频 中文字幕| 香蕉精品久久| 欧美久久久久久蜜桃| 国产1卡2卡三卡四卡网站| 精品国产免费观看一区| 中文字幕亚洲视频| 日韩欧美看国产| 日韩欧美中文视频| 日韩精品―中文字幕| 中文字幕在线官网| 亚洲欧洲国产视频| 91av久久久| 尤物av一区二区| 日韩精品在线网站| 欧美1区免费| 日韩三级视频在线播放| 亚洲一区视频在线观看视频| 不卡在线视频| 中文字幕第一页在线| 久久精品久久精品亚洲人| 欧美日韩国产专区| 国产日产一区二区三区| 精品久久在线观看| 欧美日韩国产第一页| 日韩视频精品在线观看| 国产黄色在线免费观看| 亚洲免费在线观看av| 欧美亚洲国产免费| 中文字幕在线观看网址| 亚洲视频色图| 黄色欧美日韩| 欧美日韩中文| 久久久99精品久久| 欧洲精品在线一区| av免费看在线| 国产婷婷一区二区| 亚洲伊人婷婷| 国产激情三区| 日韩精品视频在线观看免费| 国产日韩免费| 亚洲永久免费视频| 国产日产一区二区三区| 国产999精品在线观看| 日韩三级免费观看| 日韩在线高清视频| 亚洲第一视频| 日本不卡免费高清视频| 日韩 欧美 亚洲| 刘玥91精选国产在线观看| 中文字幕在线导航| 亚洲欧美日本另类| 国产综合精品在线| 色综合久久六月婷婷中文字幕| 中文字幕日韩高清| 国产成人一区二区精品非洲| 二区视频在线观看| 国产高清精品在线| 999精品在线| 午夜福利一区二区三区| 日韩精品丝袜在线| 国产激情在线| www.精品视频| 日韩av一区二区在线观看| 日韩在线视频在线观看| 欧美不卡123| 国产91久久久久| 婷婷久久综合网| 国产成人综合av| 日韩精品视频免费在线观看| 7799精品视频天天看| 色综合天天性综合| 91精品国产自产观看在线| 国产资源在线观看| 国产乱国产乱老熟300| 一区在线播放视频| 日韩精品视频在线观看网址 | 欧美专区中文字幕| 欧美日韩亚洲视频| 欧美日韩在线看| 九一久久久久久| 韩国av一区二区| 国产欧美日韩亚州综合| 精品日韩在线| 天堂在线视频中文网| 国产网站av| 日韩在线视频精品| 久久精品国产99| 欧美日韩亚州综合| 精品国产31久久久久久| 日韩欧美高清在线视频| 欧美日韩国产在线看| 欧美日韩精品国产| 国产不卡一区二区在线观看| 91麻豆精品国产91久久久使用方法| 首页国产欧美久久| 一区二区欧美国产| 91精品国产91久久久久久不卡| 国产成人精品三级| 欧美日韩国产一二| 香蕉视频亚洲一级| 日韩三级免费观看| 日韩欧美中文第一页| 精品久久久久久无| 在线精品日韩| va中文字幕| 国产欧美日韩不卡免费| wwwav在线播放| 日韩欧美一二三四区| 欧美中文字幕在线视频| 人妻一区二区三区免费| 欧美日韩99| 日韩黄色在线播放| 亚洲国内精品视频| 欧美一级搡bbbb搡bbbb| 日韩亚洲一区在线| 欧美高清一级片在线| 国产对白在线| 91精品综合久久久久久 | 日韩av一区二| 91精品久久久久久久91蜜桃| 国产蜜臀在线| 国产一区二中文字幕在线看| 日韩av一区二| 一区二区三区视频网站| 精品免费久久久| 一区二区欧美国产| 国产成人精品综合网站| 国产日韩中文在线| 欧美日韩国产在线观看| 成人福利一区| 精品日韩在线| 日韩精品在线视频| 蜜桃久久av一区| 成人ww免费完整版在线观看| 精品久久久精品| 日韩免费视频一区| 欧美日韩一级片在线观看| 一区二区视频免费看| 国产日韩中文在线| 欧美在线亚洲一区| 久久久精品国产99久久精品芒果| 亚洲综合欧美在线| 51精品免费网站| 欧美日韩在线不卡视频| 日本亚洲欧美三级| 中文天堂资源在线| 免费国产h视频在线观看86| 日韩字幕在线观看| 亚洲国产综合久久| 一区二区三区久久| 日韩专区中文字幕| 不卡视频一区二区三区| 欧美日韩中文字幕日韩欧美| 欧美色欧美亚洲高清在线视频| 欧美日韩国产免费| 亚洲视频资源在线| 久久精品在线免费观看| 一区二区视频在线| 91精品国产综合久久福利| 欧美日韩精品欧美日韩精品| 国产绿帽一区二区三区| 欧美日韩高清不卡| 在线视频国内一区二区| 亚洲人成欧美中文字幕| 亚洲一区中文| 一级一片免费视频| 在线精品日韩| 日韩字幕在线观看| 精品久久九九| 国产欧美综合在线观看第十页| 亚洲福利视频专区| 蜜桃精品视频| 午夜福利一区二区三区| 欧美日韩在线播放三区四区| 欧美日韩中文字幕在线视频| 二区三区中文字幕| 亚洲一区在线观看视频| 中文字幕精品一区二区三区在线| 国产一二三区精品视频| 欧美午夜影院在线视频| 91精品xxx在线观看| 久久99久久久久久久噜噜| 精品播放一区二区| www中文字幕在线观看| 亚洲视频在线观看三级| 亚洲深夜福利| 国产羞羞视频在线播放| 一本一道久久a久久精品综合蜜臀| 日韩国产一区| 国产不卡在线| 国产日韩亚洲欧美| 中文天堂在线一区| 日韩欧美一级精品久久| 国产1卡2卡三卡四卡网站| 欧美日韩乱国产| 亚洲一区中文字幕在线观看| 日韩av不卡在线观看| 日韩精品第一区| 日韩三级一区二区| 日韩字幕在线观看| 国产欧美久久久| 一区二区高清视频| 国产在线观看黄色| 日韩视频在线观看一区| 91久久精品国产91性色69| 欧美日韩在线观看一区| 欧美日韩精品区| 国产在线一区二区视频| 国产永久免费高清在线观看| 午夜国产视频| 日本亚洲视频在线| 尤物在线精品| 国产福利免费观看| 日韩免费视频一区二区| 精品视频—区二区三区免费| 国产成人精品三级| 午夜av一区二区| 日韩在线视频网| 免费精品国产自产拍在| 欧美日韩乱国产| 日韩av综合在线观看| 91精品视频免费在线观看| 欧美三级日韩在线| 日韩国产一区久久| 国产天堂素人系列在线视频| 精品福利一区二区三区| 欧美日韩亚洲国内综合网| 日韩欧美三级| 国产日韩精品在线看| 日韩精品午夜| 久久99久久久久久久噜噜| 视频一区三区| 91精品免费观看| 国产午夜精品视频免费不卡69堂 | 精品成人久久久| 一区在线免费| 国产免费久久久| 精品成人久久av| 国产蜜臀在线| 一区二区高清视频| 中文字幕五月天| www.狠狠干| 成人福利一区| 区日韩二区欧美三区| 日韩欧美在线字幕| 91精品在线国产| 亚洲欧美视频一区二区三区| 欧美一级免费看| 久久久久久99精品| 精品一区二区三区中文字幕| 中文字幕 乱码 中文乱码91| 精品视频久久| 91精品观看| 九九精品调教| 免费精品国产自产拍观看| 欧美日韩视频免费| 国产亚洲人成a一在线v站| 91吃瓜在线观看| 欧洲精品二区| 欧美一级搡bbbb搡bbbb| 色猫猫国产区一区二在线视频 | 99精品在线播放| 亚洲娇小xxxx欧美娇小| 一级片在线播放| 蜜桃视频一日韩欧美专区| 欧美三级在线播放| 欧美高清一级片在线| 亚洲第一精品在线| 欧美日韩在线视频一区| 日韩欧美不卡| 一区二区三区在线|网站| 国产最顶级的黄色片在线免费观看| 精品久久久久久综合日本欧美| 午夜伊人狠狠久久| 一区二区在线看| 亚洲三级免费看| 国产一级久久久| 欧美日韩高清在线播放| 中文字幕一区二区三区精品| 一区精品在线播放| 一区免费视频| 日韩在线高清视频| 亚洲 欧美 精品| 日韩在线三区| 欧美99久久| 91九色精品视频| 日韩久久久精品| av影视在线看| va中文字幕| 日韩在线高清视频| 久久精品国产91精品亚洲| 区日韩二区欧美三区| 国产一区不卡精品| 欧美中文字幕在线视频| av一级在线| 亚洲综合在线小说| 国产在线观看91| 欧美日韩国产系列| 国产黄在线观看| 一区二区欧美国产| 免费视频久久| 69av亚洲| 国产三级精品网站| 欧美日韩在线不卡一区| 亚洲一区三区在线观看|