Drop Traitを使用しても、それが毎回実行されるわけではありません。スコープを外したり解凍したりするときに実行されますが、 mem::forget
が呼び出されたときなど常にそうであるとは限りません。
これは、解凍中のパニックがプログラムを中止させるためです。 Abort on Panic
にAbort on Panic
てコンパイルされた可能性もあります。
詳細については、本をご覧ください : https : //doc.rust-lang.org/book/drop.html