Оборачивание API класса C ++ для потребления C

У меня есть набор связанных классов C ++, которые должны быть упакованы и экспортированы из DLL таким образом, чтобы ее можно было легко использовать библиотеками C / FFI. Я'ищу некоторыхлучшие практики" для этого. Например, как создавать и освобождать объекты, как обрабатывать базовые классы, альтернативные решения и т. Д.

Некоторые основные рекомендации, которые у меня есть, - это преобразовать методы в простые функции с дополнительным аргументом void *, представляющимэтот' указатель, включая любые деструкторы. Конструкторы могут сохранять свой исходный список аргументов, но должны возвращать указатель, представляющий объект. Вся память должна обрабатываться с помощью одного и того же набора процессов и свободных подпрограмм и должна быть в некотором смысле «горячей» заменой с помощью макросов или иным образом.

Ответы на вопрос(6)

Ваш ответ на вопрос