如何将已有的c++类、函数、结构体定义等封装为1个dll

使用dll封装一个dll函数,但函数的参数是dll内部一个已经定义好的结构体类型的指针。这样则会要求dll的接口文件中包含dll内部的头文件,破坏了dll的封装性。请问这... 使用dll封装一个dll函数,但函数的参数是dll内部一个已经定义好的结构体类型的指针。
这样则会要求dll的接口文件中包含dll内部的头文件,破坏了dll的封装性。
请问这种需要在dll接口中使用dll内部结构体的情况,应如何处理。
展开
 我来答
qiminixi
2014-03-31 · TA获得超过819个赞
知道小有建树答主
回答量:552
采纳率:0%
帮助的人:239万
展开全部
如果结构体中所有数据都是函数调用时需指定的参数,那么就不算破坏dll封装性。
如果结构体只有部分数据是函数调用时需要指定的,那么可以将结构体中的成员作为函数参数传递过去,比如:
struct S{
A;
B;
C;
};
只需要成员A和B,所以函数可是这样:void Function(A,B);
或者另外定义一个结构体作为接口:
struct Y
{
A,
B
};
函数数可以是这样:void Funtion(Y *p_y);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式