我想为一堆重载函数创建一个包装
void print(int i);
void print(long i);
void print(char* s);
...
void myPrint(int x, int y, ??? toPrint){
moveTo(x,y);
print(toPrint);
}
我该怎么做?是否可以没有模板?
最佳答案
如果无法使用模板,则可以对myPrint
采用与print
相同的方法。
void myPrint(int x, int y, int toPrint){
moveTo(x,y);
print(toPrint);
}
void myPrint(int x, int y, long toPrint){
moveTo(x,y);
print(toPrint);
}
void myPrint(int x, int y, char* toPrint){
moveTo(x,y);
print(toPrint);
}
由于您正在执行嵌入式编码,因此您也可以原谅使用宏。
#define MYPRINT( x, y, toPrint ) \
do { \
moveTo(x,y); \
print(toPrint); \
} while(false)
关于c++ - C++包装重载函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15709327/