|
|
1
5
我不明白为什么您需要模板方法模式。 为什么不将这些算法定义为可以传递给基准函数的函数呢?
然后这样称呼它:
当然,另一种方法可能是使用 CRTP (一个在编译时模拟虚拟函数的非常聪明的模式——它也适用于静态方法):
然后可以调用静态函数:
最后一点需要注意的是,这两种方法的开销都应该为零。与涉及虚拟函数的任何内容不同,编译器完全知道在这里调用哪些函数,并且可以并且将它们内联,从而产生与手工编写每个案例一样高效的代码。 |
|
|
2
2
这是一个简单的模板化版本
|
|
|
3
1
|
|
|
4
0
在一个抽象的类中,你可以用一个Selk()方法来实现它,并且在线性搜索和二进制搜索中重写它。 您还可以使用函数指针(这将是我的首选解决方案)或boost::函数,或者模板化您的函数并传入一个函数。 |
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |