問題タブ [alloc]

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.

0 投票する
2 に答える
336 参照

objective-c - 新しい文字列オブジェクトを宣言するとき、最初にそれをインスタンス化する必要がありますか?

次のコードが示すように、新しい文字列オブジェクトのインスタンス化を行う必要がありますか?

または、次のコードを実行するだけで済みます。

同じ結果が返されると思います。では、「alloc」と「init」が必要かどうか、必要でない場合はいつわかりますか?

ありがとう

ジェン

0 投票する
2 に答える
4462 参照

objective-c - 静的Objective-C変数を解放する方法

StackOverflowの質問「キャッシュされた変数を定義するときにobjective-cでstaticキーワードを使用する」は、XcodeのTableViewSuiteの例4のコードを参照しています。static NSDateFormatterallocrelease

static変数を解放すべきではありませんか?はいの場合、コードのどこでリリースする必要がありますか?いいえの場合、なぜですか?

0 投票する
2 に答える
266 参照

iphone - シングルトンを使用してスレッド間で渡されるとデータが失われる

編集:

ありがとう@BlackFrog。近づいたと思いますが、値はまだ取得されていません...

値は [progressController updateProgressSummary:...] 内のログで示されるように設定されますが、以下に示すように、progressUpdate initWithProgressUpdate:.... にログを記録すると nil になります。

私は、progressUpdate に設定されたプロパティと、progressUpdate の 3 つのコンポーネントのそれぞれに設定されたプロパティのどちらを使用するかについて、少し混乱しています。提案されているように、3 つの個別のプロパティを割り当てから保持に変更し、progressUpdate プロパティ全体でも同じことを試みました (ここには示されていません)。

progressController.h

……

progressController.m

しかし、数ミリ秒後....オブジェクト内では....それらはゼロです。

progressUpdate.h

.....

progressUpdate.m

更新の終わり

カスタム クラスのデータをあるスレッドから別のスレッドに渡す方法について、助けが必要です。パスの前にありますが、到着すると消えます。私が知っていることはすべて試しましたが、役に立ちませんでした。

私のバックグラウンド スレッドは ProgressController を呼び出し、現在の進行状況の詳細を渡します。次に、ProgressController のデリゲート (View Controller) で performSelectorOnMainThread を実行して、詳細を表示します。

単一の NSString を通過するときはすべて正常に機能していましたが、2 つの文字列と数値を渡す必要があり、 performSelectorOnMainThread は 1 つのオブジェクトしか渡せないため、これらをカスタム オブジェクト - ProgressUpdate にカプセル化しました。

データは ProgressController を正しく通過しますが、View Controller に表示されるまでには null です。さまざまな場所に NSLogs を配置したので、これを知っています。

私はそれと関係があるのだろうか:

  • マルチスレッドとカスタム オブジェクト

  • ProgressController がシングルトンであるため、呼び出されるたびに新しい ProgressUpdate を割り当てましたが、それは役に立ちませんでした。

どんなアイデアでも大歓迎です。わかりやすくするために、コードを以下に示します。

ProgressUpdate.h

ProgressUpdate.m

ProgressController.m

RootViewController.m

0 投票する
5 に答える
493 参照

ios - 目標 c: 割り当て vs 統合/保持

初心者の質問があります。(単一のメソッド/関数ではなく) コードのすべての部分で UIView にアクセスしたいと考えています。

したがって、 @interface セクションで宣言しました

そして@property (nonatomic, retain) UIView *calendarView。@implementation には@synthesise calendarView.

ここで、このビューのフレームを定義し、次のようにコーディングしたいと思います。

しかし、calendarView は既に保持され合成されているため、ここで深刻な問題を起こしているのではないかと考えています。メモリの問題が発生しているため、確かに UIView alloc は不要であるか、アプリをクラッシュさせる可能性さえありますよね?

したがって、前の 2 行の代わりにこれをコーディングする必要がありますが、calendarView がまったく表示されないという効果しかありませんでした。

私の質問は、ビューを使用する前に本当にビューを割り当てる必要があるかどうかです。それともまだ別の解決策がありますか?

0 投票する
3 に答える
217 参照

objective-c - Objective-Cクラスの継承と割り当て

SquareがRectangleのサブクラスである以下の行を考えると、次のようになります。

thisObjectには次のものが含まれます。1。Squareオブジェクトのすべてのインスタンス変数。2.Squareオブジェクトに実装されているすべてのインスタンスメソッド。3.Rectangleオブジェクトのすべてのインスタンス変数。4.Rectangleオブジェクトに実装されているすべてのインスタンスメソッド。

SquareがRectangleのサブクラスである以下の行を考えると、次のようになります。

thisObjectには次のものが含まれます。1。Squareオブジェクトのすべてのインスタンス変数。2.Squareオブジェクトに実装されているすべてのインスタンスメソッド。3.Rectangleオブジェクトに実装されているすべてのインスタンスメソッド。

意見の相違はありますか?

0 投票する
1 に答える
168 参照

objective-c - NSDictionary は定義されていますか?

ループ内で設定される可能性のある NSDictionary があります。ループの最後で、辞書が定義されているかどうかを調べたいと思います。次に例を示します。

残念ながら、myDict が割り当てられているかどうかに関係なく、myDict のテストは毎回パスします。[myDict count] のようなメソッドを myDict に渡そうとすると、割り当てられていないため、exc_bad_access が返されます。ですから、それは一種の無人地帯です。

これを達成する方法はありますか?NSMutableDictionary に切り替えて定義し、ループに追加してカウントをテストできることはわかっていますが、それは私の好みではありません。

0 投票する
2 に答える
9143 参照

objective-c - 子クラスが親クラスのメソッドを呼び出す

Objective-C では、子クラスで親のメソッドを呼び出したり呼び出したりしたいと考えています。親が子を割り当てたように、子は親メソッドを呼び出す何かを行います。そのようです:

どうすればこれを行うことができますか?(詳しく教えていただけると助かります)

0 投票する
2 に答える
580 参照

ios - NSString 初期化または割り当てエラー?

私はこのインターフェースを持っています:

そして、この実装:

Cards* カードなどの Cards オブジェクトを作成し、次のようにメソッド setEffect を実行すると: [card setEffect:@""]; コンパイルはできますが、実行時エラーが発生します。理由を知っている人はいますか?前もって感謝します!

0 投票する
1 に答える
212 参照

iphone - ビューを適切に解放するとアプリがクラッシュする

この問題で私を助けてくれることを願っています。次のコードに問題があります。

ご覧のとおり、ViewController を割り当ててから解放しました。問題は、ビューを ThirdViewController に変更してから前のビューに戻そうとすると、アプリがクラッシュすることです。これは、以前のビューに戻る方法です。

ビューを解放するときも同じ問題が発生します。ビューを解放しなくてもアプリはクラッシュしませんが、メモリ リークが多く、ViewController が 15 個以上あることを考えると、アプリを長時間使用すると最終的にクラッシュします。

私が間違っていることは何ですか?ps:ビューのアニメーション/トランジションにデリゲートを使用しています。

ありがとう!

編集: switchView:toView: 以下のコード

}

0 投票する
2 に答える
3517 参照

objective-c - init] 自動参照カウント

私は使用することになっていることを知っています:

初期化するrealObject(realObjectはクラス内のオブジェクトです)

しかし、ARC モードでは自動で解放されますが、このテクニックを使用する必要はありますか? 単純に使用できますrealObject = [[ObjectClass alloc] init];か? そうでない場合、漏れる特定の理由はありますか?

ありがとう