Использование iPhone/Objective C CGFLOATS: 0,1 нормально, или это должно быть 0,1F?

StackOverflow https://stackoverflow.com/questions/1513470

Вопрос

При использовании метода COMETITIOD CPHEED C, который принимает CGFloatS, например [UIColor colorWithRed:green:blue:], Важно ли добавить AF к постоянным аргументам, чтобы явно определить их как поплавки, например, я всегда должен вводить 0,1F, а не 0,1 в таких случаях? Или компилятор автоматически отбрасывает 0,1 (что является двойным в целом) до 0,1F (что является поплавком) во время компиляции? Я не хочу, чтобы эти актеры происходили во время выполнения, потому что они будут ненормально выступать.

заранее спасибо

Mrmage

Это было полезно?

Решение

Это не важный; Он ничего не сломает, чтобы использовать константу с двойной задачей, в которой ожидается постоянная однооперации.

Однако, если вы включили предупреждение о неявных 64-битных преобразовании в 32-разрядную часть и строили 32-разрядную архитектуру (которые, как я полагаю, включает iPhone), тогда вам захочется использовать константы одного назначения просто Чтобы не получить этого предупреждения.

(В качестве альтернативы, вы можете настроить этот параметр явно, с условием архитектуры включает его для 64-битных архитектур. Но это В данный момент Важно только если вы также используете часть вашего кода в приложении Mac.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top