笔记sizeof

本文通过C++代码示例对比了vector容器与数组的大小计算方式,揭示了vector对象大小固定为16字节的特点,并展示了如何使用size()获取容器中元素的数量。
#include <iostream>
#include <vector>
#include <string>
using namespace std;


void main()
{
    vector<int>ivec = {1,2,555,655};
    //vector<string>svec = { sda,sdad,asda,da };//出错
    vector<string>svec = { "s","d" };
    //string<int>si;//说明string并不是模板
    int array[] = { 1,2,3,55,65,65 };
    cout << sizeof(array) << "\t" ;//24 六个元素
    cout << sizeof(*array) << endl;//4,说明这个是首元素,4是int 的大小
    cout << "----------------" << endl;
    cout << sizeof(ivec)<< "\t";//16  我把大括号里的元素删了一个,这个对象的大小还是16 
    cout << ivec.size() << endl;//5  五个元素
    cout << "----------------" << endl;
    cout << sizeof(svec) << "\t";//16
    cout << svec.size() << endl;//2
    system("pause");
}


/* 总结 sizeof是求这个对象的单位大小,而size求容器中的个数
   而vector的对象总是16跟元素的个数,元素的类型均没有关系
*/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值