Compilation et utilisation de la bibliothèque de liens dynamiques Dll - version simple

提示:以下是本篇文章正文内容,下面案例可供参考

1. Générer une DLL

1. Créez un projet pour générer une DLL, comme illustré dans la figure ci-dessous.
insérez la description de l'image ici
2. Cliquez sur Suivant et définissez comme indiqué dans la figure ci-dessous. Si la DLL générée est destinée à l'application MFC, veuillez cocher la case MFC.
insérez la description de l'image ici
3. Après avoir cliqué sur Terminer, le projet généré est le suivant. Le système va générer pour nous des exemples de classes exportées, de variables exportées et de fonctions exportées. Nous pouvons suivre l'exemple pour ajouter les types exportés correspondants.
insérez la description de l'image ici4. Ajoutez la fonction "addition, soustraction, multiplication et division" sur la base de cet exemple, le code est le suivant.
fichier myDll.h

#ifdef MYDLL_EXPORTS
#define MYDLL_API __declspec(dllexport)
#else
#define MYDLL_API __declspec(dllimport)
#endif
// 此类是从 myDll.dll 导出的
//导出类
class MYDLL_API CmyDll {
    
    
public:
 CmyDll(void);
 // TODO:  在此添加您的方法。
 int Mul(int a, int b);
 int Div(int a, int b);
};

//导出变量
extern MYDLL_API int nmyDll;

//导出函数
MYDLL_API int fnmyDll(void);
MYDLL_API int Add(int a, int b);
MYDLL_API int Sub(int a, int b);

fichier myDll.cpp

#include "stdafx.h"
#include "myDll.h"
// 这是导出变量的一个示例
MYDLL_API int nmyDll=0;

// 这是导出函数的一个示例。
MYDLL_API int fnmyDll(void)
{
    
    
    return 42;
}
// 这是已导出类的构造函数。
// 有关类定义的信息,请参阅 myDll.h
CmyDll::CmyDll()
{
    
    
    return;
}
/*函数实现*/
MYDLL_API int Add(int a, int b)
{
    
    
 return a + b;
}
MYDLL_API int Sub(int a, int b)
{
    
    
 return a - b;
}
int CmyDll::Mul(int a, int b)
{
    
    
 return a * b;
}
int CmyDll::Div(int a, int b)
{
    
    
 return a / b;
}

5. Cliquez avec le bouton droit sur le nom du projet et sélectionnez Générer pour générer des fichiers dll et des fichiers lib, et les fichiers générés se trouvent dans le fichier de débogage.
insérez la description de l'image ici

2. Utilisation des DLL

1. Créer un nouveau projet
Créez un nouveau projet useDll sous la solution d'origine et utilisez la DLL dans ce projet.
insérez la description de l'image ici
2. Créez le fichier useDll.cpp sous le projet useDll, le code est le suivant.

#include <iostream>
#include "../myDll/myDll.h"

#pragma comment (lib, "../Debug/myDll.lib")

int main()
{
    
    
 int a = 6, b = 2;
 //使用导出函数
 std::cout << "a + b = " << Add(a, b) << std::endl;
 std::cout << "a - b = " << Sub(a, b) << std::endl;
  //使用导出类
 CmyDll myDll;
 std::cout << "a * b = " << myDll.Mul(a, b) << std::endl;
 std::cout << "a / b = " << myDll.Div(a, b) << std::endl;
  //使用导出变量
 std::cout << "nmyDll = " << nmyDll << std::endl;
  std::getchar();
}
 

3. Cliquez avec le bouton droit sur le nom du projet et définissez useDll comme projet de démarrage. Après compilation, les résultats d'exécution sont les suivants.
insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/NICHUN12345/article/details/127342198
conseillé
Classement