我有包装器类,并将其对象传递给函数。
class wrapper
{
/// some functionality
}
将什么作为类的引用传递会更好
fun(wrapper & ob)
或包装器继承的新接口(interface),如:
class Interface
{
}
....
class wrapper:public Interface
...
fun(Interface& ob)
最佳答案
如果您希望您的函数只接受 wrapper
的实例类,使用
fun(wrapper& ob)
或
fun(const wrapper& ob)
如果您不打算修改它。
如果你想让你的函数接受任何实现 Interface
的东西类(只有在有更多的类而不仅仅是 wrapper
继承自 Interface
时才真正有用),然后使用:
fun(Interface& ob)
或
fun(const Interface& ob)
选择取决于用例。
关于c++ - 将接口(interface)或对函数的引用作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38995591/