reader1031 发表于 2008-4-11 11:10:25

问个菜鸟问题,关于大数存储

本人菜鸟,想用c++写个大数类,不知是自己实现动态数组好还是用vector好?哪位前辈路过请指教一下,谢谢

liangbch 发表于 2008-4-11 11:27:55

原帖由 reader1031 于 2008-4-11 11:10 发表 http://images.5d6d.net/dz60/common/back.gif
本人菜鸟,想用c++写个大数类,不知是自己实现动态数组好还是用vector好?哪位前辈路过请指教一下,谢谢

实现动态数组的特点:实现的好的话可能很高效,反之则低效,可以跨平台,不依赖于目标编译器是否支持STL,可用以c编程,而不是C++。 缺点: 实现起来要麻烦一些。
使用Vector的特点:效率基本上可得到保证,代码简单,移植性不好,要求目标编译器是C++,支持STL。

无心人 发表于 2008-4-11 11:29:45

我觉得还是RAW形式的内存块最好了

kenmark 发表于 2008-4-11 19:55:59

当效率敏感时,需要考虑使用低层C或者底层的ASM实现然后使用C++外包装接口,即空壳C++的手法

reader1031 发表于 2008-4-11 21:57:50

原帖由 无心人 于 2008-4-11 11:29 发表 http://images.5d6d.net/dz60/common/back.gif
我觉得还是RAW形式的内存块最好了

   可否讲解一下?谢谢

无心人 发表于 2008-4-12 08:07:25

就是以机器双字分配的原始内存块
初始时可定义一个稍微小的块
其他各属性使用静态存储
如果内存块使用中太小
再次分配,大小为原来的k倍
k可取2,当然合适的k需要根据经验调节
如果有特殊任务,则可直接限定初始化块的大小

reader1031 发表于 2008-4-12 11:40:22

感谢各位!!
页: [1]
查看完整版本: 问个菜鸟问题,关于大数存储