正在开发一个程序,关于地图信息共1026个六角格,考虑是用结构数组,还是用数据库访问?
每个数组是一个结构体,存储诸如坐标等很多信息。大家给点意见,就大家的开发经验而言,那个更快一些?效率更高?

解决方案 »

  1.   

    1026
    数据量不多啊,不需要使用数据库了,用stl吧
      

  2.   

    要看程序要实现什么样的功能了,如果比较简单用结构数组可能要快些,如果要实现结构体查询,用数据库要快些,
    毕竟在查找时进行了优化,当然还要看你用什么方式访问数据库,odbc,ado,以及用什么做数据库
      

  3.   

    推荐你使用sqlite,这个数据库可以编译到你的程序中,体积小,300来K。
    速度可以和my sql匹敌。支持绝大部分SQL标准。而且最重要的是免费的。何乐而不为呢?有大厂商的支持,Adobe,Microsoft,Apple,firefox都在使用。无论是做程序的文件格式,还是数据的排序等处理,绝对是首选。下面是我翻译的:
    根据官方的说明,sqlite有以下特色:
    零配置,不象其他数据库那样需要配置。
    无服务器,不是CS架构的数据库。
    单数据库文件,数据都保存在一个文件里面。
    跨平台的数据库格式,无论是大小尾还是32位,64位,都可以移植。
    紧凑,编译后整个sqlite库只有200KB大小。
    自显类型
    可变长度记录
    容读的代码
    SQL编译器
    开放的授权
    SQL扩展可以应用在以下场合:
    应用程序的文件格式
    嵌入式设备
    网站
    替代C的文件操作函数
    临时数据库
    数据分析工具
    企业数据库的演示和测试
    SQL语言扩展实验 不适合以下场合:
     C/S架构
     高容量的卷
     超大的数据库
     高并发的场合  SQLITE已经被多家厂商所使用,例如:Adobe,Microsoft,Apple等等  嵌入式的linux,win ce,vxworks,手机使用的数据库大部分都是sqlite,可以说在嵌入式平台上已经称霸一方了。
      我还在sony的psp见到了sqlite。另外,其他语言的驱动都已经出现,例如java,.net,python,php,perl等
      sqlite本身内置支持TCL!  从sqlite的体系上看,麻雀虽小,五脏具全,SQL分析器,编译器,虚拟机,页管理器,OS抽象层都有。而且代码包含
      大量的注释以及测试代码,非常值得学习。其实SQLITE的性能完美超越了Access一大截了,在打开事务处理的情况下,不少操作的性能超越了
    MY SQL,最重要的是,它能够直接编译到程序里面,或者编译成一个DLL,使用起来非常方便。那么好的东西,
    赶快到www.sqlite.org收藏吧