gcc では、 , を指定する-Wl
と--wrap=function_name
、「function_name」へのすべての呼び出しが「__wrap_function_name」に置き換えられ、ユーザーが「__wrap_function_name」の定義を提供することが期待されます。元のメソッドの名前を「__real_function_name」に変更します。
これは、ソース コード内の任意の関数をフックするのに役立ちます。もちろん、必要に応じて実際のメソッドを呼び出すこともできます。
C#コンパイラ/リンカーに同様のオプションはありますか? マネージ dll の一部の関数をオーバーライドしようとしています。そのdllのソースコードがあります。私のメソッドは内部的で非仮想的であるため、利用可能なモッキングフレームワークを使用できません。