Colin's Blog
Recent content on Colin's Blog
马上订阅 Colin's Blog RSS 更新: https://blog.oyyko.com/index.xml
C++ Note 2
finalwind42@gmail.com (Oyyko)
2021年11月28日 08:00
本文是我的C++笔记的第二篇My Second C++ Note;
vector.clear()
vector.clear()并不释放数组,其会调用data[0]...data[size-1]的析构函数。vector在析构的时候会先调用clear()然后释放数组例如
1 vector<int> x{1, 2, 4};2 cout << x.capacity() << x.size() << endl; // 3 33 x.push_back(10);4 cout << x.capacity() << x.size() << endl; // 6 45 x.clear();6 cout << x.capacity() << x.size() << endl; // 6 0 1 2class World 3{ 4public: 5 World() 6 { 7 cout << "World()!\n"; 8 } 9 ~World()10 {11 cout << "~World()!\n";12 }13};1415int main()16{17 vector<World> v(3);18 cout << "AAA\n";19 v.clear();20 cout << "BBB\n";21}这个会输出
1World()!2World()!3World()!4AAA5~World()!6~World()!7~World()!8BBB剩余内容已隐藏
查看完整文章以阅读更多
剩余内容已隐藏
查看完整文章以阅读更多