1.关于数据库
局域网情况下或者单机情况下使用mysql就可以。
mysql的api封装以qt的(Qvarint)最好用
c++可以用mysqlcppconn库(java
最次最通用的就是纯c风格api(使用较为麻烦)
国产数据库(人大金仓)或者Oracle使用风格类似mysql
前期可以用mysql模拟,后期可以无缝切换
如果数据量较小且需要本地存储则sqlite数据库最为合适
qt的api最好用,没有qt可以使用纯c风格api
普通缓存就用内存stl变量即可,
如果要求实时性可以使用redis作缓存
redis也有c的命令式api,可以简单使用
如果大量数据快速查询则优选elasticaserach数据库
该数据库使用Restful风格查询
如果需要使用非关系数据库则优选mongodb
该数据库有java接口也有c++接口
2.关于网络和通信
2.关于bmp
16位的bmp
RGB555 BMP大小为(800*480大小的BMP为例)----800*480*2+40+14=768054个字节(不需要掩码,抛弃)
RGB565 BMP大小为(800*480大小的BMP为例)----800*480*2+40+14+12/16(掩码)=768066/768072个字节,后面的12/16就是3色/4色的掩码字节个数了。
8位的bmp
RGB888 BMP大小为 14+40 +1024(调色板,rgba*256)+800*480 (同时注意4字节对齐)
24为bmp
片大小为 14+40 ++800*480 (同时注意4字节对齐)
$R * 0.299 + $G * 0.587 + $B * 0.114;