C++ 98 之 容器大小

cpp 复制代码
#include <iostream>
#include <string>
using namespace std;
#include <vector>

void printVector(vector<int>& v){
    for(vector<int>::iterator it = v.begin(); it != v.end(); it++)
    {
        cout << *it << " ";
    }
    cout << endl;
}
int main()
{
    vector<int>v1;
    v1.push_back(1);
    v1.push_back(2);
    v1.push_back(3);
    v1.push_back(4);

    // size(); // 返回容器中元素的个数
    // empty(); // 判断容器是否为空

    if(v1.empty()){
        cout << "为空" << endl;
    }
    else{
        cout << "v1多大: " << v1.size() << endl;
    }

    v1.resize(10); // 多余的用0填充
    printVector(v1);
    v1.resize(3);   // 剩余的截掉
    printVector(v1);

    // resize(int num, elem); // 重新指定容器的长度为num,若容器变长,则以elem值填充新位置
    // 如果容器变短,则末尾超出容器长度的元素被删除
    v1.resize(10,7);
    printVector(v1);
    
    return 0;
}

vector大小操作

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| size();//返回容器中元素的个数 empty();//判断容器是否为空 resize(int num);//重新指定容器的长度为num,若容器变长,则以默认值填充新位置。如果容器变短,则末尾超出容器长度的元素被删除。 resize(int num, elem);//重新指定容器的长度为num,若容器变长,则以elem值填充新位置。如果容器变短,则末尾超出容器长>度的元素被删除。 capacity();//容器的容量 reserve(int len);//容器预留len个元素长度,预留位置不初始化,元素不可访问。 |

相关推荐
白色冰激凌31 分钟前
[SECS/GEM研究] (三)SECS-I 串口上消息怎么分块和重传
c++·secs/gem
光头闪亮亮42 分钟前
Fyne ( go跨平台GUI )项目实战-项目开发必备基础知识(中)
android·c++·go
光头闪亮亮1 小时前
Fyne ( go跨平台GUI )项目实战-项目开发必备基础知识(下)
android·c++·go
吃好睡好便好1 小时前
MATLAB中图像的读取、写入和显示
开发语言·图像处理·学习·计算机视觉·matlab
yaoxin5211231 小时前
476. Java 反射 - 调用方法
java·开发语言
_wyt0011 小时前
洛谷 P7912 [CSP-J 2021] 小熊的果篮 题解
c++·队列
猫头虎2 小时前
什么是ZCode for GLM-5.2?
开发语言·人工智能·python·科技·算法·ai编程·ai写作
choumin2 小时前
创建型模式——原型模式
c++·设计模式·原型模式·创建型模式
bksczm3 小时前
Linux之日志和线程池、内存池
java·开发语言
笨蛋不要掉眼泪3 小时前
Java虚拟机:对象复活、引用强度与Stop-The-World
java·开发语言·jvm