問題タブ [deinit]
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.
ios - Swift の動作における deinit
に次のコードを書きましたSwift playground
。
コンソールに次のように表示されます。
私の質問は、以下のようであってはなりませんか?
swift - Swiftのクラス定義内でdeinitメソッドを呼び出す方法
このクラスの変数が特定の値に増加したときに、それが属するインスタンスを破棄できるメソッドを定義したいと考えています。私は次のようなことをしようとしました:
しかし、「初期化解除子には '{' を期待してください」というエラー メッセージが表示されます。
とにかくクラス内で自己破壊することはありますか?
swift - UIButton deinit が呼び出されていない
カスタム UIButton があり、それを押した後に削除したいと考えています。しかし、どういうわけか私がそうしようとすると deinit は呼び出されません。空のプロジェクトでこれを試しました:
で直接削除するとviewDidLoad()
deinit が呼び出されますが、上記のコードを使用しても何も表示されません。どうすれば deinit を呼び出すことができますか? 割り当てが解除されていないということですか、それとも deinit が単に呼び出されていないということですか?
ios - Swift を使用したメモリ管理の問題
メモリ割り当ての問題が発生しています。アプリを実行して特定のページにアクセスすると、そのページにアクセスするたびにメモリ カウントが 30 MB ずつ増加します。
IBOutlets を Weak として追加し、変数を ? として宣言しました。(つまり、オプション)、メモリはオブジェクトの割り当てを解除しdeinit()
ておらず、ページをアンロードしているときに呼び出されません。
以下の私のコード
———————————</p>
宣言
ios - deinit は、View Controller が開いたときにのみ呼び出されます
これは、メモリ リークの問題に関連しています。performSegueWithIdentifier を呼び出して表示し、self.dismissViewController を呼び出して閉じるビュー コントローラーがあります。このView Controller内にdeinit関数がありますが、dismissViewControllerが呼び出されたときに呼び出されず、View Controllerが表示されたときにのみ呼び出されます。この異常な動作が見られる理由を誰か説明できますか? ありがとうございました!
swift - deinit を迅速に有効にする方法
私は車のクラスを持っています。車が廃品置き場に行くとしましょう。この車はもはや総人口には数えられません。私は deinit 関数を持っていますが、車の母集団から車を体系的に削除するにはどうすればよいですか? つまり、deinit を有効にするにはどうすればよいでしょうか。
クラス変数isJunk
がありますが、それを使用してこれを機能させる方法がわかりません。
ios - アンワインド デリゲートは「中間」ビューを定義しません
次のナビゲーション パターンを持つナビゲーション コントローラー (NC) と 3 つのビュー コントローラー (A、B、C) があります。
A から C に移動して「戻る」と、B と C の両方の deinit メソッドが呼び出されます。
Unwind Segueを使用して C から A に移動すると、B deinit が呼び出されません。
理由は不明です - アプリに別の同様のシーケンスがあり、「戻る」または「巻き戻す」操作に関係なく deinits が呼び出されます。
アンワインド操作後に B が「生き続ける」原因となるものは何ですか?