[英]C++ Class object as argument of function
我在两个不同的文件中有两个函数
在文件 A.cpp
void func(int x, A a){...}
在文件 B.cpp
void func(int x, B b){...}
这两个函数做的事情几乎一样,所以我想合并它们,即在文件 C.cpp 中创建一个 function,它看起来像这样
void func(int x, AorB c){...}
。 我不希望我的 function 看起来像void func(int x, A a, B b){...}
I'd like to create a class AorB
such that my c
object is either of type A
or B
depending on which object I pass to the function.
如果处理相同,模板可以在这里提供帮助:
template <class X>
void func(int x, X b) {
...
}
但请注意,模板必须在编译时解析,因此它们必须驻留在 header 文件中,而不是单独的编译单元中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.