ios在哪裡設定工程支援arc與否

2023-02-09 21:16:16 字數 3192 閱讀 3323

1樓:匿名使用者

新建專案完成後,點選左側欄裡的第一行,標題。

這時主介面就會出現很多設定的專案。在上方有一個搜尋欄。輸入language或者arc。

具體找到arc設定,即可改為yes或者no,千鋒扣丁為你解答

ios 使用arc的工程怎麼同時再引用mrc的第三方類庫

2樓:福喜

os5.0以後就開始可以使用arc( automatic reference counting:自動引用計數 )來代替之前的mrc(manual reference counting:

人工引用計數)。使用arc會減少很多**和忘了釋放物件的苦惱。但是事情都有兩面性。

使用了arc之後如果你想複用以前寫過的使用mrc的類, 就會出報錯。這時候怎麼辦?方法比較簡單, 只需要做下面的一個步驟就可以解決:

在targets的build phases選項下compile sources下選擇要不使用arc編譯的檔案,雙擊它,輸入 -fno-objc-arc 即可

mrc工程中也可以使用arc的類。方法如下:

在targets的build phases選項下compile sources下選擇要使用arc編譯的檔案,雙擊它,輸入 -fobjc-arc 即可

ios開發 arc與非arc**的區別

3樓:黑白貓

是屬於ios開發中的記憶體管理問題:在這我簡要概述一下,詳細講的話內容挺多,而且是作為一個ios開發人員,或ios開發愛好者,這是必須瞭解的:

objective-c中提供了兩種記憶體管理機制mrc(mannulreference counting)和arc(automatic reference counting),分別提供對記憶體的手動和自動管理,來滿足不同的需求。其實arc 內部機制原理也是**於mrc ,arc 是在 ios 5/ mac os x 10.7 開始匯入,利用 xcode4.

2 可以使用該機能。arc的首要目的就是讓**簡潔化,程式設計簡單化,開發更順心應手,減少不必要的小問題小疏忽;顧名思義,自動引用計數管理,關於記憶體的申請,使用和釋放過程都交給系統自動實現,我們可也不用關係裡面的過程,但是事實上還是mrc的原理,只是是系統幫我們做了管理;

mrc,手動引用計數器管理,是在我們申請到某一塊記憶體,在使用之後,要手動釋放,釋放機理涉及到計數器問題,如果未釋放記憶體,會造成記憶體的浪費,俗稱記憶體洩露,甚至引起很多未知的錯誤結果,這對程式有威脅很大,但是,何時釋放,怎麼釋放,注意哪些問題,很有講究,這就是mrc的不便之處,也是蘋果推出arc的緣由;

mrc的具體機理,計數器是什麼,在程式過程中的變化,在達到什麼程度會釋放記憶體,怎麼操作;建議查閱相關文件;

mrc ,在**上下形式主要表現為,呼叫該物件時,要做retain操作,使用完成後要release,最後還要重寫dealloc方法,對該類的所有物件做釋放,所以在mrc的**會有autorelease,retain,release等詞語,

而arc不允許有這些詞彙,應為這些操作都由系統自動完成。

引用計數器

1.和記憶體管理相關的方法

1)alloc 引用計數器自動設為1

2)retain 引用計數器+1 返回了經過+1以後的當前例項物件

3)release 引用計數器-1,並不一定是釋放

4)retaincount 獲取引用計數器的值

5)dealloc 當例項物件被銷燬之前,系統自動呼叫。

一定要調[super dealloc]

和記憶體管理相關的名詞

1)殭屍物件:此物件被銷燬,不能再使用,不能給它傳送任何訊息

2)野指標:指向殭屍物件(不可用的記憶體)的指標,給野指標傳送訊息將會產生不可控的後果。

3)空指標:沒有指向任何物件的指標,給空指標發訊息不會產生任何行為

記憶體管理原則

1.如果你想持有某個物件,就必須負責讓做一次retain操作,引用計數器+1.

2.如果你想放棄對某個物件的持有權,就要負責讓其做一次release操作,引用計數器-1.

3.誰retain,誰release。

說到最後,如過是新手的話建議用mrc來寫,這樣可以清晰的認識oc的記憶體管理機制,避免一些不必要的失誤

4樓:匿名使用者

arc 的意思是自動管理記憶體,

arc不需要手動管理記憶體,非arc的工程需要手動管理記憶體

5樓:

mrc手動管理記憶體,arc自動引用計數,大部分不需要手動釋放。

6樓:凌小害

你將contentview的相關**都刪除好了

arc的話 你寫release 應該直接報錯了吧 你截圖的是非arc模式的吧

7樓:匿名使用者

把支援arc的貼出來讓我看看

ios 怎麼設定對所有的檔案變成非arc

8樓:匿名使用者

應該是「 ios arc 和 非arc 之間的轉換方法」

1,選擇專案中的targets,選中你所要操作的target,

2,選build phases,在其中complie sources中選擇需要arc的檔案雙擊, 並在輸入框中輸入:-fobjc-arc,如果不要arc則輸入:-fno-objc-arc

急求指教,下面的ios**啥意思啊?this file must be compiled with arc,是什麼意思? 10

9樓:匿名使用者

this file must be compiled with arc,意思是說:本檔案必須在 arc(ios sdk 5.0 之後的自動記憶體管理)下才能編譯。

#if ! __has_feature(objc_arc)#warning this file must be compiled with arc. use -fobjc-arc flag (or convert project to arc).

#endif

上面判斷是否支援arc

如果不支援就報警告 warning

10樓:匿名使用者

本檔案必須用arc編寫

ios在arc中為什麼不使用

11樓:千鋒教育

arc自動記憶體管理,現在大部分開發都是用的arc,怎麼不使用呢?

ios9 1比ios9 0 2好在哪裡呢

相比於ios9來說,蘋果在ios9.1中除了修復bug 增加系統穩定性之外,還加入了一些新功能,主要包括新增150多種表情符號 全機型 修復多工卡頓 live photo自適應 6s 6s plus 至於其它部分則是對系統原先bug的修補。另外,最受使用者關注度的操作介面卡頓的問題也得到了修復,流暢...

華為螢幕錄製設定在哪,華為錄屏設定在哪裡?

螢幕錄製功能沒有桌面應用圖示,您可以通過以下方式開啟或者排除故障。1.檢查手機是否安裝有螢幕錄製。從螢幕頂端下拉,進入狀態列,點選圖示 鉛筆樣式 檢視是否有螢幕錄製圖示,如果有,請您點選圖示即可開啟螢幕錄製功能 螢幕錄製不支援手動設定引數 如果沒有,請繼續排查。2.檢查使用組合鍵錄屏是否有效。嘗試同...

電腦密碼在哪裡修改,電腦設定開機密碼 在哪裡設定

你說的是修改使用者密碼嗎?你到 開始 設定 控制面板 使用者帳戶 選中你要改密碼的使用者修改就行了 在桌面左下角的開始設定中的控制面板裡,選擇使用者帳戶,然後就可以修改密碼了 在開始的面板設定的使用者管理中 開始 設定 控制面板使用者。看圖識字吧!我也就不多說了 電腦設定開機密碼 在 設定 以win...