問題タブ [objective-c-literals]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - NSDictionary にさまざまなデータ型の新しいオブジェクトを格納する
Realm ドキュメント サイトの Realm migration example は、新しいNSString
オブジェクトの例を示しています。例は簡単で、よく説明されています。
しかし、 以外のオブジェクトはNSString
どうでしょうか? これらの他のデータ型のオブジェクトを作成するには、コード スニペットをどのように変更する必要がありますか?
NSDate
NSData
RLMArray
NSInteger
、int
double
、float
、CGFloat
long
bool
、BOOL
objective-c - 「リテラル」として知られる「リテラル構文」を使用してインスタンスが作成されるのはなぜですか?
私を悩ませているのは、「リテラル」という用語がNSString
や などのクラスのインスタンスを指すために使用される理由NSArray
です。私NSString
は、引用符の間にある「文字通り」文字列であることと関係があると思っていました。可哀想に聞こえるかもしれませんが、それは私がそれについて考えていた方法です。
NSArray
そして今日、 の特定のインスタンスはリテラル インスタンス、つまり「リテラル構文」を使用して作成されたクラスのインスタンスとも呼ばれることがあることを知りました。
objective-c - array[index] と [array objectAtIndex:index] の違いは何ですか?
と の両方が可変配列array[index]
で動作することに気付きました。[array objectAtIndex:index]
誰かがそれらの違いを説明できますか? パフォーマンスの観点から、どれがベストプラクティスですか?
objective-c - NSMutableDictionary のエントリの編集が次のエラーで失敗する:「認識されないセレクターがインスタンスに送信されました」
次のNSMutableDictionary
ように初期化された があります。
今、私@"Enter Description"
がやろうとしていたことを次のように変更したいと思います:
ただし、次のエラー メッセージが表示されます。
*** キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了します。理由: '-[__NSDictionaryI setObject:forKey:]: 認識されないセレクターがインスタンスに送信されました
私が見つけたのは、何らかの形で にNSMutableDictionary
変換されたNSDictionary
に違いないということです。これが、編集できない理由です。たぶん、あなたは私がこれを理解するのを手伝って、正しい方向に私を向けるか、私が答えを見つけることができるリソースを見せてくれますか?
objective-c - PFObject は NSMutableDictionary のような添字をどのように許可しますか?
Parse の iOS Developers Guide を読んでいました。PFObject
添え字構文を使用したキーへの割り当てを示す場所が混乱しました。
PFObject
最初は伸びているに違いないと思いましたがNSMutableDictionary
、PFObject
伸びているNSObject
だけです。どのように振る舞っていNSMutableDictionary
ますか?
自分のクラスでこれを行うにはどうすればよいですか?
objective-c - リテラル NSArray を書き直して、OS X 10.6 の gcc でコンパイルする
私はこの行を書くためにSOでここに提案を得ました:
ただし、まだ OSX 10.6 を使用しているため、Xcode/gcc は古くなっています。
この行をコンパイルできるように書き直すにはどうすればよいですか?
objective-c - 列挙型を使用する場合、省略形の @n 型構文で NSNumber をインスタンス化できませんか?
私は次のenum
ように定義しています:
NSArray
次のようにofをインスタンス化できるようにしたいと思いますNSNumber
。
これはコンパイルではありません。洞察はありますか?これらのそれぞれについて、より扱いにくいもの[NSNumber numberWithInt:]
を使用する必要がありますか、またはこれを回避する方法はありますか? #define
(私はいくつかの理由で声明を検討し、拒否しました)。
objective-c - NSDictionary からの値の抽出 vs. objectForKey: または valueForKey:
この便利なメソッドが何を表しているのか疑問に思っていましたが、答えが見つかりませんでした。
theDictionary[@"key"]
辞書から値を抽出したいとき、正確には何をしますか? またはを使用していますvalueForKey:
かobjectForKey:
?
より良いパフォーマンスは何ですか?のようにメッセージ全体を書いた方が良い[theDictionary objectForKey:@"key"]
ですか、それとも便利な方法で十分ですか?