Может функция с переменной нет. перегрузить аргументы в VC ++? - PullRequest
1 голос
/ 19 августа 2011

У меня есть экспортированная функция в dll (написана на vc ++), которая имеет переменную №.аргументов.Теперь я хочу перегрузить эту функцию без переменной №.аргументов.Что-то не так с этой концепцией?Я обеспокоен тем, что я прочитал, что vc ++ использует соглашение о вызовах __cdecl для c и c ++.

Образцы подписей приведены ниже.

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

1 Ответ

0 голосов
/ 19 августа 2011

Это зависит от того, где вы планируете вызывать эти функции. Они должны быть преобразованы в имена типа f__FiPc?? и f__Fi6string.

Компилятор C ++ декодирует их, а компилятор C пропустит функцию f, если вы не объявили extern "c". Однако это зависит от реализации вашего компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...