可以用变量no的函数.在vc++中可以重载参数

Can a function with variable no. of arguments be overloaded in VC++?

本文关键字:vc++ 重载 参数 变量 no 函数      更新时间:2023-10-16

我在dll中有一个导出函数(用vc++编写),其中有变量编号。的参数。现在我想重载这个没有变量no的函数。的参数。这个概念有什么问题吗?我担心的原因是因为我读到vc++在c和c++中使用__cdecl调用约定。

签名示例如下:

void f(int i, char *fmt, ...);
void f(int i, string str);

这取决于您计划从哪里调用这些函数。它们应该被转换成像f__FiPc??f__Fi6string这样的名称。

c++编译器会解码它们,如果你没有声明extern "c", C编译器会错过f函数。但是,这取决于编译器的实现。