Dear visitor, welcome to Coder Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.
|
|
C/C++ Quellcode |
1 2 3 4 |
void Funktion() { MeinNamespace::DLL_SOWIEBEIMIR_API Klasseninstanz; ... } |
|
|
C/C++ Quellcode |
1 2 3 4 |
void Funktion() { MeinNamespace::DLLKlasse Klasseninstanz; ... } |
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 |
#ifndef SPRITE_HPP //Start des #define SPRITE_HPP //"Waechters". #if _USRDLL //Importieren und Exportieren der DLL #define DLL_BEISPIEL_API _declspec(dllexport) //Makro #else #define DLL_BEISPIEL_API _declspec(dllimport) //makro #endif #endif |
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 |
#include "Makro.hpp" namespace MeinNamespace { class DLL_BEISPIEL_API DLLKlasse { public: void Irgendwas(); }; } |
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
// dlltest.cpp : Definiert die exportierten Funktionen für die DLL-Anwendung. // #include "stdafx.h" #include "dlltest.h" // Dies ist das Beispiel einer exportierten Variable. DLLTEST_API int ndlltest=0; // Dies ist das Beispiel einer exportierten Funktion. DLLTEST_API int fndlltest(void) { return 42; } // Dies ist der Konstruktor einer Klasse, die exportiert wurde. // Siehe dlltest.h für die Klassendefinition. Cdlltest::Cdlltest() { return; } |
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
// Folgender ifdef-Block ist die Standardmethode zum Erstellen von Makros, die das Exportieren // aus einer DLL vereinfachen. Alle Dateien in dieser DLL werden mit dem DLLTEST_EXPORTS-Symbol // kompiliert, das in der Befehlszeile definiert wurde. Das Symbol darf nicht für ein Projekt definiert werden, // das diese DLL verwendet. Alle anderen Projekte, deren Quelldateien diese Datei beinhalten, erkennen // DLLTEST_API-Funktionen als aus einer DLL importiert, während die DLL // mit diesem Makro definierte Symbole als exportiert ansieht. #ifdef DLLTEST_EXPORTS #define DLLTEST_API __declspec(dllexport) #else #define DLLTEST_API __declspec(dllimport) #endif // Diese Klasse wird aus dlltest.dll exportiert. class DLLTEST_API Cdlltest { public: Cdlltest(void); // TODO: Hier die Methoden hinzufügen. }; extern DLLTEST_API int ndlltest; DLLTEST_API int fndlltest(void); |