作者godman362 (Shizuru)
看板C_and_CPP
标题[问题] function object & function pointer
时间Tue Apr 21 10:10:11 2009
就我知道的部分
function object是用class去包
而他也多了function pointer 两个东西
一个是泛型,一个是Construct
实质上,他就是物件导向的function pointer
那我想请问的是,他有继承和多型使用上的存在性吗?
因为敝人最多只有用到泛型+Construct而已
不知道其他的用法,所以想请教一下各位先进
请各位给予一些指点,谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.74.245.165
1F:推 legnaleurc:很少有多型,大部分的functor都是pass by value 04/21 13:18
2F:推 avhacker:boost::function 可以支多形,非常方便 04/21 15:05
3F:→ godman362:那他们有使用上的必要吗?有的话可以给个例子吗,谢谢 04/21 19:50
4F:推 avhacker:当然有啊,你会有用到把 member function 包成functor时 04/22 00:15
5F:→ avhacker:应该很快就会发现 virtual member function 也有这种需求 04/22 00:16
6F:→ avhacker:假设你要把 C::f 包进 functor,而你操作的对像是 C*, 而 04/22 00:17
7F:→ avhacker:C::f 是 virtual 的,这需求应该不会很难理解吧 04/22 00:18
8F:→ godman362:虽然不太了解,不过先谢谢a大和l大,我会再加揣摩一下 04/22 08:00