导出类 和安全使用

本文深入探讨了游戏更新模块的私有化设计原则,详细介绍了如何通过私有构造函数、静态工厂方法及成员变量封装来实现类的私有化,确保类的内部状态不受外部直接修改,并提供了实例代码演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:类构造私有化

2:不直接操作成员变量

3: static CGameUpdate* CreateGameUpdateInstance(); 创建类

 

#pragma once

class __declspec(dllexport) CGameUpdate
{
private:
 CGameUpdate(void);
public:
 ~CGameUpdate(void);
 
 static CGameUpdate* CreateGameUpdateInstance();
 DWORD m_dwXXX;
 BOOL SetVersion(DWORD dwVersion);
 DWORD m_dwVersion;
 DWORD GetVersion();
};

 

 

 

CGameUpdate* CGameUpdate::CreateGameUpdateInstance()
{
 return new CGameUpdate();
}

 

 

 

 

; YeookDll.def : Declares the module parameters for the DLL.

LIBRARY

EXPORTS
    ; Explicit exports can go here
 CreateGameUpdateInstance

 

 

 

 

#include "../YeookDll/GameUpdate.h"
#pragma comment(lib,"../bin/YeookDll.lib")
void CYeookMainDlg::OnBnClickedButton1()
{
 // TODO: Add your control notification handler code here
 CGameUpdate* pTheGameUpdate = CGameUpdate::CreateGameUpdateInstance();
 DWORD dwRet = pTheGameUpdate->GetVersion();
 CString strTemp;
 strTemp.Format(_T("%d"), dwRet);
 AfxMessageBox(strTemp);
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值