[問題] 區間轉換優雅的寫法
想到這問題是,ffmpeg做jpeg壓縮用的quality與IJG不一樣
所以要做個轉換, 但不是只用在這種情況。
程式裡常會用到很多區間的時機,區間間距不等時,
寫出來代碼很丑:
好比:
100分到96分 -> A+
90分到95分 -> A
80分到89分 -> B
:
59分以下-> GG
注意區間大小不一樣
我的實作是這樣:
enum level {AX, A, B, ..., BB};
enum level GradeToLevel(unsigned int grade)
{
if(grade >= 96)
return AX;
if(grade >=90)
return A;
if(grade >= 80)
return B;
:
return GG;
}
這樣若列舉項多點,會寫的很長,實在不雅,
有沒優雅點的寫法呢?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 116.59.239.127
推
11/25 23:59, , 1F
11/25 23:59, 1F
※ 編輯: slowOne 來自: 116.59.239.127 (11/26 00:04)
推
11/26 00:15, , 2F
11/26 00:15, 2F
推
11/26 00:24, , 3F
11/26 00:24, 3F
推
11/26 00:26, , 4F
11/26 00:26, 4F
推
11/26 00:57, , 5F
11/26 00:57, 5F
→
11/26 01:26, , 6F
11/26 01:26, 6F
→
11/26 01:53, , 7F
11/26 01:53, 7F
→
11/26 02:13, , 8F
11/26 02:13, 8F
→
11/26 02:15, , 9F
11/26 02:15, 9F
推
11/26 02:35, , 10F
11/26 02:35, 10F
→
11/26 05:41, , 11F
11/26 05:41, 11F
→
11/26 05:41, , 12F
11/26 05:41, 12F
推
11/26 05:42, , 13F
11/26 05:42, 13F
→
11/26 11:46, , 14F
11/26 11:46, 14F
→
11/26 23:32, , 15F
11/26 23:32, 15F
→
11/26 23:34, , 16F
11/26 23:34, 16F
→
11/26 23:36, , 17F
11/26 23:36, 17F
→
11/26 23:38, , 18F
11/26 23:38, 18F
推
11/26 23:54, , 19F
11/26 23:54, 19F
→
11/26 23:55, , 20F
11/26 23:55, 20F
推
11/27 00:09, , 21F
11/27 00:09, 21F
→
11/27 00:10, , 22F
11/27 00:10, 22F
推
11/28 21:32, , 23F
11/28 21:32, 23F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章