Importando e exportando funções embutidas
Funções importadas podem ser definidas como inline.O efeito é aproximadamente o mesmo que definir um padrão de função in-line; chamadas para a função são expandidas no código embutido, muito semelhante a uma macro.Isso é útil principalmente como uma forma de suporte C++ classes em uma DLL embutido que talvez alguns de seus membros funções para eficiência.
Um recurso de uma função in-line importado é que você pode levar seu endereço em C++.O compilador retorna o endereço da cópia da função in-line que residem na DLL.Outro recurso de funções embutidas importado é que você pode inicializar dados estáticos de locais da função importado, ao contrário dos dados importados globais.
Cuidado |
---|
Você deve ter cuidado quando fornecendo importado funções embutidas, pois eles podem criar a possibilidade de conflitos de versão.Uma função in-line obtém expandida no código do aplicativo; Portanto, se você posteriormente reescrever a função, ele não é atualizado, a menos que o próprio aplicativo é recompilado.(Normalmente, funções DLL podem ser atualizadas sem recriar os aplicativos que usá-los.) |