C++ 函数重载和union联合使用的威力

本文探讨了C++编程中如何利用函数重载和union联合实现更高效的代码封装。通过示例展示了这种组合在节省内存和提高性能方面的优势,揭示了C++底层机制的巧妙运用。
摘要由CSDN通过智能技术生成
博主最近街道任务“封装Sqlite3”数据库,其实桌面型Sqlite3数据库已经提供了大量API,可以非常简单的使用。按照经理的意思,防止以后更换数据库比如“oracle”、“Sql server”,甚至以后用直接使用“Excel”表格时,需要大量更改项目中与数据库相关的逻辑代码。
为了防止这种情况发生,“封转通用性数据库操作”就交给了我,是也不难,就是先定义一套通用的“操作接口”,通俗点就是先规划好“虚类”和里面的纯虚函数就行,以后的上面“Sqlite3”、oracle”、“Sql server”的实际操作都实现这个“虚类”就OK了。
废话太多了,重点来了,既然是封装,就需要简单,多以最先考虑的是函数重载。但是有一个问题,数据库的查询“还回结果类型”都不一样,如果要重载是不太可能。
//无法使用重载的情况 非常不方便
int GetValueInt();
char* GetValueStr();
double GetValueDouble();    
其实如果对所有的查询取值能否只使用一个函数GetValue()呢?经过思考。答案是可以的(纳尼?是C++吗?继续看吧!骚年^~^)。
我们可以直接定义一个还回所有类型的共用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值