Я занимаюсь обслуживанием проекта C ++ 6.0, который использует файл .def для обработки экспорта функций.Мне пришлось добавить пару методов экземпляра в определение класса, но я не знаю, как добавить эти методы в файл .def, чтобы они экспортировались.Каждая строка в разделе EXPORTS в файле .def выглядит примерно так: ?MethodName@ClassName@@AStringOfLetters
, возможно, с @Z
в конце, без какой-либо причины, которую я не могу понять.Я предполагаю, что строка букв в некотором роде соответствует прототипу метода, но я не могу найти документацию, которая описывает кодировку.У методов, которые я добавил, нет прототипа, который точно соответствует ни одному из существующих методов.
Допустим, мои новые прототипы методов выглядят так:
short ClassName::Foo1(const short, const unsigned int, const short, const unsigned int *);
short ClassName::Foo2(const short, const unsigned int, short *, unsigned int *);
Что мне нужно добавитьв файл .def, чтобы сделать мой компоновщик счастливым и экспортировать методы?