如何使用vector取代动态字符数组

C++

方式/步调

  1. 1

    凡是socket通信的时辰,如下图所示建立动态字符数组,利用完当作之后,挪用delete []释放内存 

    d788d43f8794a4c2fa0feeff00f41bd5ad6e3931.jpg
  2. 2

    拷贝数据到字符数组中,输出的信息如下所示,这与拷贝前的数据是一致的

    ca1349540923dd54013cafbcdf09b3de9d824892.jpg
  3. 3

    利用std::vector vec_msg(1024,0)来带取代字符数组,而vec_msg.data()可以获取数组的首地址

    a9d3fd1f4134970a5ac018fb9bcad1c8a6865db6.jpg
  4. 4

    经由过程std::vector拷贝数据的结果与new建立字符数组的结果是一样的,而且std::vector不需要担忧释放内存的问题

    b8389b504fc2d562becbd839e91190ef77c66c26.jpg
  5. 5

    除了挪用vector的函数data()来获取数组首地址之外,还可以经由过程如下图箭头指示的位置的体例来获取数组的首地址

    b8389b504fc2d562bef6d839e91190ef77c66c63.jpg
  6. 6

    从输出的成果看,与采用data()的体例的结果也一样的

    4e4a20a4462309f7601da6c67c0e0cf3d6cad6f0.jpg
  7. 7

    经由过程vector还可以获取数组的最大容量,数组存放元素的个数以及当前数组是否为空

    d788d43f8794a4c2f848ecff00f41bd5ac6e39fe.jpg
  8. 8

    打印成果看,最大容量与元素个数巨细一样,而且empty返回值是0,暗示false,申明当前vector不是为空

    9e3df8dcd100baa1b5864c6f4910b912c9fc2ebf.jpg
  • 发表于 2019-08-07 00:17
  • 阅读 ( 1290 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
联系我们:uytrv@hotmail.com 问答工具