美文网首页C++ 11
019 使用 shrink_to_fit 要求容器退回不需要的内

019 使用 shrink_to_fit 要求容器退回不需要的内

作者: 赵者也 | 来源:发表于2020-02-21 09:50 被阅读0次

在 C++ 11 新标准中,我们可以调用 shrink_to_fit 来要求 deque、vector 或 string 退回不需要的内存空间。此函数指出我们不再需要任何多余的内存空间。

使用示例:

#include <QCoreApplication>
#include <iostream>
#include <vector>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    std::vector<int> v;
    std::cout << "Default-constructed capacity is " << v.capacity() << '\n';
    v.resize(100);
    std::cout << "Capacity of a 100-element vector is " << v.capacity() << '\n';
    v.clear();
    std::cout << "Capacity after clear() is " << v.capacity() << '\n';
    v.shrink_to_fit();
    std::cout << "Capacity after shrink_to_fit() is " << v.capacity() << '\n';

    return a.exec();
}

输出结果如下:

Default-constructed capacity is 0
Capacity of a 100-element vector is 100
Capacity after clear() is 100
Capacity after shrink_to_fit() is 0

相关文章

  • 019 使用 shrink_to_fit 要求容器退回不需要的内

    在 C++ 11 新标准中,我们可以调用 shrink_to_fit 来要求 deque、vector 或 str...

  • Docker MySQL 容器内无法输入中文

    问题描述 使用 docker 启动的 MySQL 容器,登录进入容器内使用 client 登录 MySQL,无法输...

  • mongodb+docker数据卷实现数据持久化

    docker使用起来非常方便,不会污染本地电脑环境。但容器内的数据随着容器关闭就消失了。 解决方法是把容器内的目录...

  • 07 Docker_hello world

    Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。 hell...

  • Docker数据管理

    容器管理数据方式: 数据卷:容器内数据直接映射到本地主机环境; 数据卷容器:使用特定容器维护数据卷。 数据卷 类似...

  • 10、Docker容器日志写满解决方式

    使用Docker容器启动服务时,常常会由于容器内的日志过多导致把宿主机的磁盘写满。 容器日志目录容器日志的位置,磁...

  • Docker最简单的Hello World

    Docker 允许你在容器内运行应用程序, 使用docker run命令来在容器内运行一个应用程序。 最简单的“h...

  • 让docker任务可以后台运行

    解决如下问题:我在docker容器内编译,使用 run -it 连接,但是一断开,容器内部的任务就终止了 启动容器...

  • Aware

    Aware 容器对 Bean 本身的逻辑基本是无侵入的,所以Bean一般不需要了解容器的状态和直接使用容器;但是有...

  • 问题(解决): bash: ping: command not

    在使用Docker容器时,在容器内进行 ping localhost 百度后有大佬建议用 可是...... 还是不...

网友评论

    本文标题:019 使用 shrink_to_fit 要求容器退回不需要的内

    本文链接:https://www.haomeiwen.com/subject/mtnbwqtx.html