Windows で DLL を使用したことがある人なら誰でも言うようにnew
、オブジェクトを DLL 境界の片側に配置し、次に反対側に配置するのは悪い考えdelete
です。通常、これを回避するために DLL でファクトリ メソッドを使用して、新規作成/削除を実行するオブジェクト コードが同じオブジェクト ファイル内で発生するようにします。
今日、私はあるオブジェクトから別の DLL で作成されたオブジェクトにstd::move
行きたい新しいインターフェイスを設計していました。別のオブジェクトが基になるポインターを所有するようになったため、 が とは異なるオブジェクト コードで発生する可能性がstd::vector<std::wstring>
あることを意味する可能性があることに気付いたとき、私はすべてこれを行う準備ができていました。delete
new
これが事実であるかどうか誰でも確認できますか?