一、enum用法
1、enum關鍵字可以用於定義一組命名值,枚舉類型可以包含常量或函數。
2、枚舉類型是一種用戶自定義類型,可以像具體的整數類型一樣使用。
3、在不指定枚舉常量值的情況下,第一個枚舉成員的初始值為0,後續枚舉成員的初始值默認為前一個成員的值+1。
#include <iostream>
using namespace std;
enum Weekdays {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};
int main() {
Weekdays today = Wednesday;
cout << "今天是星期" << today+1 << endl; //注意:於 enum 定義中從零開始算,所以 +1
return 0;
}
// 今天是星期3
二、mysql enum用法
1、MySQL中的ENUM是一種數據類型,它允許我們在一個集合中定義一個值列表。
2、enum類型可以存儲逗號分隔的字符串列表或數值列表。
3、使用ENUM類型可以限制列的取值範圍。
CREATE TABLE fruits (
id INT AUTO_INCREMENT PRIMARY KEY,
name ENUM('apple','banana','orange'),
price FLOAT
);
三、c枚舉類型enum用法
1、與C++一樣,C枚舉類型enum的目的是為了提高代碼的可讀性和可維護性。
2、在C語言中,枚舉類型enum的定義如下:
enum 枚舉名 {
標識符[=整型常數],
標識符[=整型常數],
……,
標識符[=整型常數]
} 枚舉變量;
3、注意,C語言中枚舉類型是沒有作用域概念的。
四、enum用法mysql
1、MySQL中的ENUM類型通過枚舉字符串值來表示。當我們使用ENUM類型時,MySQL會驗證傳遞給列的值是否在該列的規定值列表中。如果不是,MySQL將拒絕將該值存儲在該列中。
/* 創建表 */
CREATE TABLE products (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255),
type ENUM('fruit', 'vegetable', 'meat'),
PRIMARY KEY (id)
);
/* 插入數據 */
INSERT INTO products (name, type)
VALUES('apple', 'fruit'), ('onion', 'vegetable'), ('beef', 'meat');
/* 查詢數據 */
SELECT * FROM products;
/* 結果 */
id name type
1 apple fruit
2 onion vegetable
3 beef meat
五、typedef enum用法
1、typedef enum用法可以將枚舉定義成一種新類型,並且可以對該類型變量進行定義。
#include <iostream>
using namespace std;
typedef enum Weekdays {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
} Weekdays;
int main() {
Weekdays today = Wednesday;
cout << "今天是星期" << today+1 << endl; //注意:於 enum 定義中從零開始算,所以 +1
return 0;
}
// 今天是星期3
六、c語言enum用法
1、C語言中枚舉類型enum可以賦予地位高於0的值,而且可以定義一個常量數組。這是C語言與C++的差異之一。
#include <iostream>
using namespace std;
enum greek { alpha=1, beta=2, gamma=3 };
greek A;
int main() {
A = beta;
cout << "beta = " << A << endl;
greek B;
B = gamma;
cout << "gamma = " << B << endl;
return 0;
}
// beta = 2
// gamma = 3
七、enum class用法
1、C++11引入的枚舉類enum class用法可以將枚舉常量放置在特定的命名空間中。
2、枚舉類enum class避免了枚舉類型的潛在名稱衝突和陳舊的約定(例如,兩個枚舉類型可能具有相同的名稱,但具有不同的值)。
#include <iostream>
using namespace std;
enum class Days {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};
int main() {
Days today = Days::Wednesday;
switch(today) {
case Days::Monday:
cout << "星期一" << endl;
break;
case Days::Tuesday:
cout << "星期二" << endl;
break;
case Days::Wednesday:
cout << "星期三" << endl;
break;
case Days::Thursday:
cout << "星期四" << endl;
break;
case Days::Friday:
cout << "星期五" << endl;
break;
case Days::Saturday:
cout << "星期六" << endl;
break;
case Days::Sunday:
cout << "星期日" << endl;
break;
}
return 0;
}
// 星期三
八、數據庫enum用法
1、數據庫中經常用到ENUM類型,因為它可以限制列的取值範圍。
2、在數據庫中,ENUM表示的是字符串而不是數字。
3、MySQL中的ENUM是一種數據類型,它允許我們在一個集合中定義一個值列表。
/* 創建表 */
CREATE TABLE attention (
id INT(11) NOT NULL AUTO_INCREMENT,
type ENUM('like', 'comment', 'follow'),
PRIMARY KEY (id)
);
/* 插入數據 */
INSERT INTO attention (type)
VALUES('like'), ('follow');
/* 查詢數據 */
SELECT * FROM attention;
/* 結果 */
id name type
1 like like
2 follow follow
九、c++中enum的用法
1、C++中enum的用法可以用於枚舉值的定義,這些值可以用作數組的索引、陳述語句和其他場合。
2、C++枚舉類型是一種用戶自定義類型,可以像具體的整數類型一樣使用。
3、可以為C++枚舉類型的枚舉常量指定初始值。
#include <iostream>
using namespace std;
enum color {red, green, blue};
int main() {
color c;
c = blue;
cout << c << endl; // 輸出 2
return 0;
}
十、public enum 類的用法
1、public enum類的用法可以將枚舉類型聲明為另一個類的公共成員,這樣就可以像其他公共成員一樣進行訪問了。
2、在C++中,可以通過在類的定義中聲明公共枚舉類型來定義枚舉。
#include <iostream>
using namespace std;
class MyClass {
public:
enum Color {RED, GREEN, BLUE};
Color color;
void setColor(Color c) {
color = c;
}
Color getColor() {
return color;
}
};
int main() {
MyClass obj;
obj.setColor(MyClass::RED);
cout << obj.getColor() << endl; // 輸出 0
obj.setColor(MyClass::GREEN);
cout << obj.getColor() << endl; // 輸出 1
obj.setColor(MyClass::BLUE);
cout << obj.getColor() << endl; // 輸出 2
}
結束語
通過以上的介紹,我們可以發現C++枚舉類型enum在編程中的用法是非常廣泛和靈活的。它可以用於限制變量的取值範圍,提高代碼可讀性和可維護性,以及方便的讓我們使用字符串或數字來表示一組命名值,增加代碼重用性和可擴展性。同時,了解枚舉類型的MYSQL、C語言以及其他的一些實現方式可以更好地提高我們在對應領域的應用能力。
原創文章,作者:GOYJ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/144202.html
微信掃一掃
支付寶掃一掃