[解決済み] CGFloatとfloatを使うことの違いは何ですか?
2022-04-22 20:19:42
質問
CGFloatを使いまくることが多いのですが、これだと無意味にパフォーマンスヒット"するのでは?CGFloatはfloatよりも何か"heavy"な感じですよね? どの時点でCGFloatを使うべきなのか、何がその違いを生み出しているのか。
どのように解決するのですか?
Weichsel が述べたように、CGFloat は単なる型定義で、次のいずれかです。
float
または
double
. Xcode で "CGFloat" をコマンドでダブルクリックすると、型定義が定義されている CGBase.h ヘッダにジャンプするので、自分で確認できます。NSInteger と NSUInteger についても、同じような方法が使われています。
これらの型は、32ビットと64ビットの両方でそのまま動作するコードを簡単に書けるようにするために導入されました。しかし、もし必要なものが
float
の精度は、自分のコード内で
float
その方がメモリ使用量が少なくて済みます。整数値の場合も同様です。
現在、ほとんどのMacは64ビットCPUを搭載しており、Snow Leopardはカーネルとユーザーアプリケーションを含めて完全に64ビット化されています。アップルの Cocoaのための64ビット移行ガイド は有用な資料です。
関連
-
[解決済み] Objective-Cの#importと#includeの違いは何ですか?
-
[解決済み] Cocoa:フレームとバウンドはどう違うの?
-
[解決済み] アトミック属性と非アトミック属性の違いは何ですか?
-
[解決済み] クラスメソッドとインスタンスメソッドの違いは何ですか?
-
[解決済み] objectForKeyとvalueForKeyの違い?
-
[解決済み] xcodeでiOSアプリのアーカイブを生成できない
-
[解決済み] TabBarのタブビューにプログラムで切り替える?
-
[解決済み] UISearchDisplayController/UISearchBarでNSFetchedResultsController(CoreData)をフィルタリングする方法
-
[解決済み] iPhone SDK: loadViewとviewDidLoadの違いは何ですか?
-
[解決済み] モバイルSafariで:active擬似クラスが機能しない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] UIViewの下に影を描くには?
-
[解決済み】「推奨アイコンファイルがありません - バンドルには、ちょうど「120x120」ピクセル、.png 形式の iPhone / iPod Touch 用のアプリアイコンが含まれていません。
-
[解決済み】@try - Objective-Cのcatchブロック
-
[解決済み] UINavigationControllerに右ボタンを追加する方法は?
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] レビュー待ちの状態でバイナリを拒否する(バイナリ拒否ボタンが見つからない)
-
[解決済み] Objective-C用JSONパーサーの比較(JSON Framework、YAJL、TouchJSON、etc.)
-
[解決済み] CALayer setNeedsDisplayInRect:] の暗黙のアニメーションを無効にする。
-
[解決済み] 円形のカスタムUIViewの描き方 - iPhoneアプリ
-
[解決済み] ObjectiveCの変数位置の宣言・定義?