15.【cocos2d-x 源码分析】:localStorage的详细分析

本文深入剖析了cocos2d-x 3.3版本中localStorage的源码,详细讲解了其提供的本地数据存储接口及其实现方式,探讨了其依赖的底层封装技术。

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

对应源码位置:cocos2d-x-3.3\cocos\storage\local-storage\localStorage
localStorage 的接口

cocos2d-x提供了简单的本地数据存储的功能,其主要是由对sqlite的封装来实现。

//初始化 数据库
void CC_DLL localStorageInit( const std::string& fullpath = "");
//释放数据库
void CC_DLL localStorageFree();
//存一个key-value
void CC_DLL localStorageSetItem( const std::string& key, const std::string& value);
//根据key获取value
std::string CC_DLL localStorageGetItem( const std::string& key );
//删除 key对应的 项
void CC_DLL localStorageRemoveItem( const std::string& key );
localStorage 的接口的实现
//是否初始化的标志
static int _initialized = 0;
static sqlite3 *_db;
//查询
static sqlite3_stmt *_stmt_select;
//删除
static sqlite3_stmt *_stmt_remove;
//更新
static sqlite3_stmt *_stmt_update;

//static表明  别处不能用 
static void localStorageCreateTable()
{
   
   	//创建 data表 两个属性 key为主键
	const char *sql_createtable = "CREATE TABLE IF NOT EXISTS data(key TEXT PRIMARY KEY,value TEXT);";
	sqlite3_stmt *stmt;
	int ok=sqlite3_prepare_v2(_db,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值