タグ付けされた質問 「automatic-ref-counting」

自動参照カウント(ARC)は、Objective-CおよびSwiftオブジェクトの自動メモリ管理を提供するコンパイラー機能です。


3
弧でセッターをオーバーライド
@interface Article : NSObject @property (nonatomic, strong) NSString *imageURLString; @end @implementation Class @synthesize imageURLString = _imageURLString; - (void)setImageURLString:(NSString *)imageURLString { _imageURLString = imageURLString; //do something else } ARCが有効な場合、セッターを正しくオーバーライドしましたか?

2
ARCはディスパッチキューをサポートしていますか?
「ディスパッチキューのメモリ管理」に関するアップルのドキュメントを読んでいます。 ガベージコレクションされたアプリケーションを実装する場合でも、ディスパッチキューと他のディスパッチオブジェクトを保持して解放する必要があります。Grand Central Dispatchは、メモリを再利用するためのガベージコレクションモデルをサポートしていません。 ARCはガベージコレクタではないことを知っていますが、dispatch_retainやdispatch_release my dispatch_queue_tを実行する必要がないことを確認したい

5
Objective-Cの弱くて強いプロパティセッター属性
Objective-Cのプロパティセッターの弱い属性と強い属性の違いは何ですか? @property(retain, [weak/strong]) __attribute__((NSObject)) CFDictionaryRef myDictionary; 影響とメリットは何ですか? ウィークはiOS 4では使用できず、割り当てを使用する必要があると聞きました。 弱いと割り当てに似ていますか?

3
ARCを使用してiOS 4.0をターゲットとする場合、弱参照をどのように置き換えるのですか?
私はXcode 4.2を使用して最初のiOSアプリの開発を開始し、「ユーティリティアプリケーション」テンプレート(FlipsideViewControllerに付属するテンプレート)を使用してiOS 5.0をターゲットにしていました。 ARCはコンパイル時の機能なので、iOS 4とも互換性があるはずなので、アプリのターゲットを4.3にしてコンパイルしてみました。そうすると、次のエラーが発生します。 FlipsideViewController.m:エラー:自動参照カウントの問題:現在のデプロイメントターゲットは自動__weak参照をサポートしていません それはこの行を参照しています: @synthesize delegate = _delegate; その変数は次のように宣言されます。 @property (weak, nonatomic) IBOutlet id <FlipsideViewControllerDelegate> delegate; 「弱い参照」がiOS 4でサポートされていないことは理解していますが、なぜ弱い参照を最初から使用したいのか、それを使用しないように書き直す方法がわからないのですが、まだARCを利用しています(結局のところ、iOS 4および5で動作するはずですよね?)

3
KVOとARCでObserverを削除する方法
ARCの下のオブジェクトからオブザーバーをどのように削除しますか?オブザーバーを追加するだけで、削除するのを忘れますか?手動でメモリを管理しなくなった場合、どこで監視をやめますか? たとえば、ViewControllerでは次のようになります。 [self.view addObserver:self forKeyPath:@"self.frame" options:NSKeyValueObservingOptionNew context:nil]; 以前は、removeObserver:ViewControllerのdeallocメソッドを呼び出していました。


7
iOSでHTTPPOSTリクエストを送信する
開発中のiOSアプリケーションでHTTPPostを送信しようとしていますが、応答としてコード200を(urlconnectionから)取得しますが、プッシュがサーバーに到達しません。サーバーからの応答が得られず、サーバーが私の投稿を検出しません(サーバーはAndroidからの投稿を検出します) 私はARCを使用していますが、pdとurlConnectionを強力に設定しています。 これはリクエストを送信するための私のコードです NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@%@",dk.baseURL,@"daantest"]]]; [request setHTTPMethod:@"POST"]; [request setValue:@"text/xml" forHTTPHeaderField:@"Content-type"]; NSString *sendString = @"<data><item>Item 1</item><item>Item 2</item></data>"; [request setValue:[NSString stringWithFormat:@"%d", [sendString length]] forHTTPHeaderField:@"Content-length"]; [request setHTTPBody:[sendString dataUsingEncoding:NSUTF8StringEncoding]]; PushDelegate *pushd = [[PushDelegate alloc] init]; pd = pushd; urlConnection = [[NSURLConnection alloc] initWithRequest:request delegate:pd]; [urlConnection start]; これはデリゲートの私のコードです #import …

4
ARCは、ファイル-fno-objc-arcにマークを付けているにもかかわらず、構造体または和集合内のObjective-Cオブジェクトを禁止しています。
ARCは、ファイル-fno-objc-arcをマークしているにもかかわらず、構造体または和集合内のObjective-Cオブジェクトを禁止していますか?なぜそうなのですか? -fno-objc-arcとマークすれば、この制限はないと思いました。

2
MacでARCを使用してrespondsToSelectorを使用することはできません
respondsToSelectorARC環境で呼び出すと、次のエラーメッセージが表示されます。Automatic Reference Counting Issue No known instance method for selector respondsToSelector: これはヘッダーです #import <AppKit/AppKit.h> @class MTScrollView; @protocol MTScrollViewDelegate -(void)scrollViewDidScroll:(MTScrollView *)scrollView; @end @interface MTScrollView : NSScrollView { } @property(nonatomic, weak) id<MTScrollViewDelegate>delegate; @end これは実装ファイルです #import "MTScrollView.h" @implementation MTScrollView @synthesize delegate; - (void)reflectScrolledClipView:(NSClipView *)aClipView { [super reflectScrolledClipView:aClipView]; if([delegate respondsToSelector:@selector(scrollViewDidScroll:)]) { [delegate scrollViewDidScroll:self]; } …

4
ARCでの@property定義:強いか保持するか?
Xcode 4.2とARCを使用すると、自動生成されたコードNSManagedObjectがプロパティに対して次のようになります。 @property (nonatomic, retain) NSString * someString; 1)またはretainに置き換える必要はありませんstrongかweak? 2)自動生成されたコードがまだ使用されているのはなぜですか retain 3)retainこのプロパティステートメントの正しい置換は何ですか? 現在、を使用して問題をデバッグしていNSFetchRequestますが、これが問題の原因である可能性があると思いました。考え?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.