1
4
有几种选择。经典的方法是将公共代码封装为从两个函数调用的函数:
您可以将公共代码打包到单个函数中,并将lambda传递给:
在给定的情况下,lambda方法是我最喜欢的方法,可能如下所示:
编辑: schorsch312 的 answer 但是,不依赖boost和string比较,而是通过简单的函数重载来解决:
它只产生一个单一的函数名(通过重载这两个函数而不是使用单独的名称,可以在前面两种方法中实现),不过,可能会对您进行进一步的更改(规范、文档、已经使用接口的代码)。 |
2
4
我的建议是:保留共同点,把差异化为参数。
在你的情况下,区别在于两种说法。可以通过函数抽象出来的。
|
3
1
我会用一个模板
|
4
0
可以使用对象方向。 使用string和float类型创建抽象基类和派生类。 在av结构中,有对基类的引用,可以访问抽象基类的操作或获取方法。
|
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |