Results 2 comments of 齊藤敦志

動的に型をディスパッチできることがメリットであり、そのために実行時コストが生じることがデメリットでしょう。 配列の要素、コールバック、データメンバのいずれにしてもコンパイル時に型が確定するなら `std::function` は不適当ですし、実行時の選択が必要なら `std::function` は有用です。

そうですね。 C++11 を前提にすることになっているので余談程度とはいえ std::size をとりあげるくらいであれば C++11 で使える std::extent を先に紹介して然るべきかなくらいの感覚です。