繁体   English   中英

C++ Class object 作为 function 的参数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM