Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. List类的clear()函数

List类的clear()函数

已定时 已固定 已锁定 已移动 OpenFOAM
4 帖子 2 发布者 3.2k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • V 离线
    V 离线
    Vortex
    写于2020年11月5日 15:47 最后由 编辑
    #1

    最近编程要用到List类。看了下其中的clear()函数发现其只是让成员size变成0,成员指针指向的内存似乎没有清除啊?!这样不会很危险吗?
    clear()函数的注释是这样的
    //- Clear the addressed list, i.e. set the size to zero.
    // Allocated size does not change
    这里的Allocated size和size的区别是什么?
    求大佬们赐教一波~

    1 条回复 最后回复
  • 刘 离线
    刘 离线
    刘雄国
    写于2020年11月5日 21:09 最后由 编辑
    #2

    可以参照vector<>内存管理模式,网上很多资料。不清空内存是为了防止堆空间内存反复allocate和delete,防止重复调用系统资源,这样运行速度下降。allocated size是分配了多少空间,size是你用多少个空间。
    double a[10] = {1,1,1};
    类似这种,分配10个double空间,实际上只用了3个double空间,当然这使用的是栈内存。

    V 1 条回复 最后回复 2020年11月6日 03:02
  • V 离线
    V 离线
    Vortex
    写于2020年11月6日 03:02 最后由 编辑
    #3
    此回复已被删除!
    1 条回复 最后回复
    • V 离线
      V 离线
      Vortex
      在 2020年11月6日 03:02 中回复了 刘雄国 最后由 编辑
      #4

      @刘雄国 赞,太感谢了。我赶紧去补一下vector<>:146:

      1 条回复 最后回复
    2020年11月5日 15:47

    2/4

    2020年11月5日 21:09

    2020年11月6日 03:02
    • 登录

    • 登录或注册以进行搜索。
    2 / 4
    • 第一个帖子
      2/4
      最后一个帖子
    0
    • 最新
    • 版块
    • 东岳流体
    • 随机看[请狂点我]