如何引用DLL中的类
我已经制作好了类,并生成了abc.dll。如何在新建的项目下加载这个dll文件,使用其中的ClockTime类?
vs2008中的源码如下:
//头文件
#pragma once
#ifndef ClockTime_H
#define ClockTime_H
class _declspec(dllexport) ClockTime
{
private:
int hour;
int second;
int minute;
public:
ClockTime(void);
~ClockTime(void);
void setHour(int _hour);
int getHour()const;
};
#endif
//源文件
#include "StdAfx.h"
#include "ClockTime.h"
ClockTime::ClockTime(void)
{
hour=0;
second=0;
minute=0;
}
ClockTime::~ClockTime(void)
{
}
void ClockTime::setHour(int _hour)
{
hour=_hour;
}
int ClockTime::getHour()const
{
return hour;
}
[解决办法]
class _declspec(dllimport) ClockTime
[解决办法]
你在dll中定义一个函数,用于返回一个ClockTime类对象的指针
例如
ClockTime *GetClockTime(void)
{
return new ClockTime();
}
把 ClockTime_H引入你要引用 ClockTime类的文件。
然后
ClockTime *ct = GetClockTime();
就ok了,用完别忘了释放ct。
[解决办法]
最好不要引用dll中的类
如果还是想用
你得把这个dll相关的lib加到你的项目中
[解决办法]
1.导出DLL。
2.在引用的地方添加类定义的头文件。
[解决办法]
同意楼上