免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
以下の##の質問を見てください
constの使用方法については、次のエラーがあります
A int const a = 3; int *p = &a;
B int a = 3; int const *p = &a;
C int a = 3; int * const p = &a;
D const int a = 3; int const &b = a;
どちらを選択するには?
私は、C ++のみC言語は、dオプションについてあまり知らないかもしれない問題である知ったときです。
ここでのconstでいくつかのC言語(C ++)です
constが、変数を定義するキーワードは、読み取り専用の変数に、変数を加えた権限と同等ですが、その値を変更することはできません静的な役割、その結果、変更することを許可されていないです。
リリースconstの当初の目的は、その利点を継承しながら、その欠点を排除し、事前にコンパイラ・ディレクティブを交換することです。(Baiduの百科事典)
以下は、特定の使用constのスリッティングを説明します
1.変更された通常の変数
const int x = 3;
const int型xが読み取り専用の変数に変更されます(たとえば、いくつかのビデオで一定になった、私はこの文は正確ではないと思います)、その値は、読み取り専用ことができますが、変更することはできません例えば
const int x = 3;
x = 5;//这是错误的
コンパイラでの文言は、エラー(異なるプロンプト異なるコンパイラ)が表示されます
エラー:読み取り専用変数「X-」の割り当ては、
これはまた、上記のステートメントを確認し、それが読み取り専用の変数、constのです。