5

重複の可能性:
c の「static const」と「#define」

私がこれを行うとき:

#define WEEKDAYS 7

そしてそれ:

const int WEEKDAYS = 7;

それらの間に違いはありますか?どちらも同じことをしているようです - コード内で将来使用するために定数値を設定します。

4

2 に答える 2

7
#define WEEKDAYS 7

void f() {
    int WEEKDAYS = 3; // error
}

const int WEEKDAYS_CONST = 7;

void g() {
    int WEEKDAYS_CONST = 3; // okay: local scope for WEEKDAYS_CONST
}
于 2012-08-25T16:30:59.943 に答える
2
#define WEEKDAYS 7

ソース ファイル内のすべての単語WEEKDAYSを数字の 7 に置き換えます。

const int WEEKDAYS = 7;

コードでアクセスできる 7 で表される実際の定数を定義します。

于 2012-08-25T16:29:04.913 に答える