9.24 __declspec(dllimport)

The __declspec(dllimport) attribute imports a symbol through the dynamic symbol table when linking against DLL libraries.


When an inline function is marked __declspec(dllimport), the function definition in this compilation unit might be inlined, but is never generated out-of-line. An out-of-line call or address reference uses the imported symbol.
You can only use __declspec(dllimport) on extern functions and variables, and on classes.
When a class is marked __declspec(dllimport), its static data members and member functions are all imported. When individual static data members and member functions are marked with __declspec(dllimport), only those members are imported.


If you mark a class with __declspec(dllimport), you cannot then mark individual members of that class with __declspec(dllimport).


__declspec(dllimport) int i;
class __declspec(dllimport) X {   void f(); };
Related reference
9.23 __declspec(dllexport)
Non-ConfidentialPDF file icon PDF versionARM DUI0375E
Copyright © 2007, 2008, 2011, 2012, 2014 ARM. All rights reserved.