C++(push_back())

在 C++ 中,push_back 是用于在容器的末尾添加一个元素的成员函数。这个函数通常用于向动态数组(比如 std::vector)或类似的容器中添加新的元素。

语法:

void push_back(const T& value);
  • value:要添加到容器末尾的元素。

示例:

#include <iostream>
#include <vector>

int main() {
    // 创建一个空的 vector
    std::vector<int> myVector;

    // 使用 push_back 添加元素
    myVector.push_back(1);
    myVector.push_back(2);
    myVector.push_back(3);

    // 打印 vector 中的元素
    for (int i : myVector) {
        std::cout << i << " ";
    }

    return 0;
}

在上述示例中,push_back 被用于向 std::vector 中添加整数元素。myVector 最初是一个空的 vector,通过三次调用 push_back,分别将元素 1、2 和 3 添加到了 vector 的末尾。最后,通过循环遍历并输出 vector 的元素。

注意事项:

  1. 动态扩展push_back 不仅添加元素,还会根据需要动态扩展容器的大小,确保足够的空间来存储新的元素。
  2. 对于不同容器:虽然 push_backstd::vector 的成员函数,但类似的函数也存在于其他容器,如 std::liststd::deque 等。
  3. 引用和移动语义:C++11 引入了右值引用和移动语义,对于大对象的添加,可以使用 std::move 来减少拷贝操作。
#include <iostream>
#include <vector>

int main() {
    std::vector<std::string> myVector;

    std::string str1 = "Hello";
    std::string str2 = "World";

    // 使用移动语义
    myVector.push_back(std::move(str1));
    myVector.push_back(std::move(str2));

    // 此时 str1 和 str2 的状态不确定,可能为空,不要再使用它们

    return 0;
}

在上述示例中,std::move 用于将字符串的所有权从 str1str2 转移到 vector 中。这可以提高性能,因为避免了不必要的拷贝操作。



posted @   做梦当财神  阅读(1348)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2021-12-14 Python del、pop()、remove()、clear()
2021-12-14 Python 浮点型精度问题
点击右上角即可分享
微信分享提示