Каково различие между использованием CGFloat и плаванием?

Вы имеете в виду InputBox? Просто посмотрите в Microsoft. Пространство имен VisualBasic.

C# и VB.Net совместно используют общую библиотеку. Если один язык может использовать его, другой - также.

167
задан 12 August 2009 в 08:26
поделиться

2 ответа

Как указано в @weichsel, CGFloat - это просто определение типа для float или double . Вы можете убедиться в этом сами, дважды щелкнув «CGFloat» в Xcode с помощью Command - он перейдет к заголовку CGBase.h, где определен typedef. Тот же подход используется и для NSInteger и NSUInteger.

Эти типы были введены, чтобы упростить написание кода, работающего как в 32-битных, так и в 64-битных версиях без изменений. Однако, если все, что вам нужно, это точность float в вашем собственном коде, вы все равно можете использовать float , если хотите - это несколько уменьшит объем памяти. То же самое и с целочисленными значениями.

Я предлагаю вам потратить скромное время, необходимое для очистки вашего приложения до 64-разрядной версии, и попробовать запустить его как таковое, поскольку большинство компьютеров Mac теперь имеют 64-битные процессоры, а Snow Leopard полностью 64-битный, включая ядро ​​и пользовательские приложения. Полезным ресурсом является руководство Apple по переходу на 64-разрядные версии для Cocoa .

188
ответ дан 23 November 2019 в 21:00
поделиться

CGFloat - это обычное число с плавающей запятой в 32-битных системах. и удвоение в 64-битных системах

typedef float CGFloat;// 32-bit
typedef double CGFloat;// 64-bit

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

73
ответ дан 23 November 2019 в 21:00
поделиться