動的にロードされるライブラリ用のプラットフォームに依存しないラッパーを実装中です。もちろん、ライブラリから関数をロードするときは、将来の使用のためにそれらをポインタとして保存する必要があります。通常の関数ポインターの代わりに、boost::function を使用することを考えました。確かに、コンパイル時間が長くなりますが、それは私が恐れていることではありません。それよりも:
保存された関数を呼び出すときに、boost::function によって導入されるオーバーヘッドはどれくらいですか? ありますか?それはどれくらい大きいですか?
そのような関数を時々呼び出す場合、オーバーヘッドはあまり発生しないと思いますが、頻繁に呼び出される関数はどうですか? glVertex
(ロードされた GL ライブラリの極端な例)。パフォーマンスにどの程度影響しますか?
ソースダイビングブーストはあまり答えませんでした:>.
また、コンパイラに依存する場合は、主に GCC と MSVC に興味があります。