日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++工作笔记-枚举类型的作用

發布時間:2025/3/15 c/c++ 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++工作笔记-枚举类型的作用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? 原文:http://blog.csdn.net/lzkit/article/details/7846045

? ? ?學C的候老師沒有很詳細講到枚舉類型,但在學C++和做一些實踐的時候發現,枚舉類型有時候是必要的。

?
? ? ?有時我們希望某些常量只在類中有效。由于#define定義的宏常量是全局的,不能達到目的,于是想當然地覺得應該用const修飾數據成員來實現。const數據成員的確是存在的,但其含義卻不是我們所期望的。const數據成員只在某個對象生存期內是常量,而對于整個類而言卻是可變的,因為類可以創建多個對象,不同的對象其const數據成員的值可以不同。不能在類聲明中初始化const數據成員。const數據成員的初始化只能在類構造函數的初始化表中進行。怎樣才能建立在整個類中都恒定的常量呢?別指望const數據成員了,應該用類中的枚舉常量來實現。枚舉常量不會占用對象的存儲空間,它們在編譯時被全部求值。

? ? ? 另外,寫程序時,我們常常需要為某個對象關聯一組可選alternative屬性。此時就要用到switch...case,但case后加的是常量,而case1,case2,case3.....這樣根本不知道代表的是什么,程序的可讀性也很差。這個時候枚舉類型就能派上用場了。如enum weather(sunny=0, cloudy, rainy),那么case sunny就能清晰表示天氣晴朗的操作是什么。

? ? ?當然,枚舉常量也有缺點:它的隱含數據類型是整數,其最大值有限,且不能表示浮點數(如PI=3.14159)。



以上是轉載的內容,敘述的整個過程還是比較清晰的。但,針對在類中有一個恒定的常量,其實可以使用:

static const 來定義數據,其中static const int 及static const char 可在類中初始化,而諸如static const float 之類則不能在類中初始化,必須類外。

總結

以上是生活随笔為你收集整理的C++工作笔记-枚举类型的作用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。