首页 文章
  • 1 votes
     answers
     views

    为什么noexcept移动构造函数在向量重新分配期间没有被调用?

    正如我们所知,当新元素被添加到std :: vector(通过push_back)时,它可能缺少空间,并且对于这些情况,vector会分配更大的内存块来保存其所有元素,然后从现有块转移到新块 . 在C 98中,这是通过从旧位置复制元素然后销毁这些对象来完成的,因此它可以提供强大的异常保证,并且在c 11中,它可以使用移动构造函数进行优化,前提是它是noexcept但是如果我的析构函数是noexce...

热门问题