Проводит ли const до или после CGFloat?

Это даже имеет значение? Const до или const после? Я предполагаю, что если я положил const до или после CGFloat, он сделал значение CGFloat постоянным, но как насчет указатель? Правильно ли это для Objective-C:

// Example.h

extern CGFloat const kPasscodeInputBoxWidth;


// Example.m

CGFloat const kPasscodeInputBoxWidth = 61.0f;

Ответы

Ответ 1

Он может идти до или после. В случае с указателем важно, заканчивается ли const до или после звездочки:

const int *a;    // pointer to const int -- can't change what a points at
int const *a;    // same

int *const a;    // const pointer to int -- can't change the pointer itself.
                 // Note: must be initialized, since it can't be assigned.

Ответ 2

Это не имеет значения (я всегда использовал первое, но я думаю, это вопрос стиля):

const CGFloat kPasscodeInputBoxWidth = 61.0;
CGFloat const kPasscodeInputBoxWidth = 61.0;

По крайней мере, в текущем представлении CGFloat, это всего лишь typedef из double, так что сделайте так же, как и с обычным примитивным типом данных. Для указателей размещение const будет определять, является ли это указателем или постоянным значением, поэтому для этого это имеет значение.