私はメモリリークを避けるために ARC でからCFStringRef
に移動する正しい方法を探していました。NSString
NSString * string = (__bridge NSString *)cfString;
ここではそのアプローチを使用していますが、アプリのプロファイリングを行うと、この小さなメソッドでまだメモリ リークが発生します [添付の画像を参照]。
したがって、これを修正する方法がわかりません。誰でもこの問題の解決策を持っていますか?
ありがとうございました
そのため、明らかCFRelease(ext)
にリターンの前にを追加すると、リークが修正されました。問題は、私がその理由を完全に理解していないと思うことです。私は次の行だと思った:
NSString * extension = (__bridge NSString*)ext
Core Foundation ext 文字列の所有権を取得し、リリースを処理します。ここで何が起こっているのかを正確に説明できる人はいますか?