「C言語/データ型と変数の高度な話題」の版間の差分
削除された内容 追加された内容
→register: 記憶域クラス指定子registerを伴って宣言した変数には、アドレス演算子( & )を適用する事はできない。 タグ: 2017年版ソースエディター |
→enum: enum のネストは用意されていない。 |
||
657 行
[[C++]]のコードとしてコンパイルすると、dw++ がエラーになります<ref>[https://paiza.io/projects/idW8CifxFGXZ5bG1sdRdWA?language=c static_cast を使えば]、<syntaxhighlight lang="cpp" inline>dw = static_cast<Day_of_the_Week>(dw + 1)</syntaxhighlight>コンパイルできますが、<code>static_cast</code>は、コンパイラーの型チェックを骨抜きにしてしまうので、乱用は避けましょう(operator ++ をオーバーロードするにしても、その中で static_cast が必要)。</ref>。
enum のネストは用意されていない。どうしても複数個のenumをネスト的にグループにまとめたい場合、標準C言語では無理だが、C++ではclassで複数個のenumをまとめるなどして代用する方法がある。
===タグ===
|