小编use*_*420的帖子

是否可以为函数参数指定多种类型?

在 C++ 中可以将函数参数定义为一种以上类型吗?

#include <iostream>
using namespace std;

class A {
public:
   void  PrintA() { cout << "A" << endl;}
};

class B {
public:
   void  PrintB() { cout << "B" << endl;}
};

class C: public A, public B {
public:
   C(){;}
};

class D: public A, public B {
public:
   D(){;}
};

///
void __printall__(A*a, B*b){
   a->PrintA();
   b->PrintB();
}
#define printall(a) __printall__(a,a)
///

int main(int argc, char *argv[]){
   C c;
   D d;
   printall(&c);
   printall(&d);
}
Run Code Online (Sandbox Code Playgroud)

我想用不使用宏的东西更改注释之间的代码。我不会强制转换指针,因为我想保留类型安全。我什至不会在 C/D 和 …

c++ polymorphism multiple-inheritance

6
推荐指数
2
解决办法
4788
查看次数

标签 统计

c++ ×1

multiple-inheritance ×1

polymorphism ×1