C константные значения - PullRequest
2 голосов
/ 27 мая 2011

В приведенном ниже коде, что означают первое и второе const?

Я думаю, первое или второе означает, что foo является константой; другой означает, что элементы foo также являются константами. Это правда?

static const char * const foo[] = {"bar", "baz"};

Ответы [ 2 ]

4 голосов
/ 27 мая 2011

Это означает, что это массив константных указателей (поэтому вы не можете изменить указатели) на константные символы (то есть вы не можете изменить символы через указатели).Это распространенный способ определения фиксированных строк, таких как имена команд, в приложении.

3 голосов
/ 27 мая 2011

См. cdecl :

declare foo as array of const pointer to const char

...