学会思考
刻意练习
参考:
https://blog.csdn.net/m0_37170593/article/details/76445972
解决方案下新建dll以及测试工程:
http://www.360doc.com/content/17/0923/15/1489589_689454213.shtml

1,生成dll与lib文件:位于当前工程上一级Debug目录下;

使用dll文件:
1,拷贝dll,lib文件到使用dll的新工程目录上一级目录Debug目录下,与可执行文件位于同一级目录下;
2,dll对应的.h文件放到源码路径下;
3,添加头文件“panny_dll.h”
4,添加"panny_dll.lib"到资源文件
5,点击“重新生成解决方案”

参考代码:
panny_dll.h代码:
#pragma once
__declspec(dllexport) int panny(int i, int(*call_back)(int a, int b));

panny_dll.cpp代码:
#include "panny_dll.h"

int panny(int i , int(*call_back)(int a, int b))
{
	int aa = i*i;
	call_back(i,aa);
	return 0;
}
//回调函数带入使用


panny_dll_test.cpp代码:
#include <stdio.h>
#include <iostream>
#include "panny_dll.h"

int panny_call_back(int a, int b)
{
	int c = a + b;
	printf("output0:%d\n",c);
	return 11;
}

void main()
{
	int p = 10;
	int panny1;
	panny1 = panny(p,panny_call_back) + 90;
	printf("outputa:%d\n",panny1);
	std::cin.get();
}

  

posted on 2020-03-13 09:22  Worty  阅读(243)  评论(0编辑  收藏  举报