Передача структуры в динамически загружаемую dll - PullRequest
1 голос
/ 16 января 2012

У меня есть динамически загружаемая dll, в которой есть вызываемые функции, и я хотел бы передать ей структуру.Он динамически загружается, так как я не знаю, какую версию DLL я буду использовать до времени выполнения.

Во-первых, я должен передать по значению или ссылке?

Во-вторых, где я должен объявить этоstruct, так что она доступна как для dll, так и для вызывающей стороны (я предполагаю, что она должна быть доступна для обеих)из dll придется статически связываться с dll, чтобы иметь доступ к объявлению структуры, и это то, чего я изначально хотел избежать.

1 Ответ

2 голосов
/ 16 января 2012

Во-первых, я должен передать значение или ссылку?

Это зависит, например, см. этот вопрос .

Во-вторых, где я объявляю эту структуру, чтобы она была доступна как для DLL, так и для вызывающей стороны

Вы объявляете это в заголовочном файле, который оба используют. Структура объявляется во время компиляции, для этого не требуется никаких ссылок на какие-либо библиотеки.

...