Проводит ли 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 будет определять, является ли это указателем или постоянным значением, поэтому для этого это имеет значение.