回答編集履歴

1

enum を使った手法を追加

2019/10/29 08:31

投稿

SaitoAtsushi
SaitoAtsushi

スコア5461

test CHANGED
@@ -15,3 +15,21 @@
15
15
 
16
16
 
17
17
  C++17 からならば `inline` 変数を使うべしと言い切ってしまえるのですが、 C++11 だと定数の定義をどうすべきなのかというのはなかなか微妙な話で、なんだかんだで `#define` で定義するのが楽というのが現実です。
18
+
19
+
20
+
21
+ `#define` では `namespace` に入れられませんので、 `namespace` 中で `quint8` 型の整数定数を定義するという条件に合うようにするには `enum` を用いる方法が考えられます。
22
+
23
+
24
+
25
+ ```cpp
26
+
27
+ namespace TMP_NAME
28
+
29
+ {
30
+
31
+ enum : quint8 { TEISU_A = 10, TEISU_B = 20 };
32
+
33
+ }
34
+
35
+ ```