在看某个开源项目中,有这样一段代码,真心不知道这样是好是坏好处具体在哪里呢?希望各位看官,留下自己的看法吧!~
struct TDllProxy
{
TDllProxy(LPCSTR szDllPath) : m_hModule(NULL)
{
m_hModule = LoadLibraryA(szDllPath);
}
~TDllProxy()
{
if(m_hModule)
FreeLibrary(m_hModule);
m_hModule = NULL;
}
FARPROC Get(LPCSTR szFuncName)
{
if(m_hModule)
{
return GetProcAddress(m_hModule, szFuncName);
}
return NULL;
}
HMODULE m_hModule;
};
使用也很简单:
TDllProxy dll("anyone.dll");
struct TListItem
{
public:
TListItem()
{
dwFlags =0;
clrBg =BACKGROUND_COLOR;
clrBtmGapLine=RGB(234,233,225);
nLeftmargin =10;
nTopMargin =-1;
bBold =FALSE;
nHeightAdd =0;
_isclapsed = FALSE;
}
~TListItem()
{
for(TListItemPtrs::iterator it=_clapsed_items.begin(); it!=_clapsed_items.end(); ++it)
delete *it;
_clapsed_items.clear();
}
int nLeftmargin;
int nTopMargin;
BOOL bBold;
int nHeightAdd;
DWORD dwFlags;
COLORREF clrBg;
COLORREF clrBtmGapLine;
TListSubItems subItems;
BOOL _isclapsed;
TListItemPtrs _clapsed_items;
DWORD_PTR _itemData;
};
然后,作者这样写的目的是什么呢?C++ 语言把struct当类使用,具体的好处有哪些呢?