21xrx.com
2024-09-19 10:13:48 Thursday
登录
文章检索 我的文章 写文章
C++中size的用法详解
2023-06-28 11:41:41 深夜i     --     --
C++ size 用法 详解

在C++中,size()是一个非常常用的成员函数,它通常用于获取容器的大小。无论是对于数组还是STL容器,都可以使用size()函数来获取它们的大小。在这篇文章中,我们将对C++中size()的用法进行详细解释。

1. 数组

对于数组来说,可以使用sizeof运算符来获取其大小。但是,使用sizeof运算符只能在数组的定义范围内使用,如果数组作为函数参数传递时,就无法得知其大小。因此,使用size()函数可以更方便地获取数组的大小。

下面是一个例子:


int arr[] = 3;

int size = sizeof(arr) / sizeof(int);

// 使用size()函数也可以获取数组大小

int arrSize = sizeof(arr) / sizeof(arr[0]); // arr[0]表示数组的第一个元素

2. STL容器

对于STL容器来说,size()函数是一个成员函数,用于获取容器元素的数量。下面是一些STL容器的使用示例:


#include <iostream>

#include <vector>

#include <list>

#include <deque>

#include <set>

#include <map>

using namespace std;

int main() {

  // vector

  vector<int> vec = 4;

  cout << "vector size: " << vec.size() << endl;

  // list

  list<int> lst = 5;

  cout << "list size: " << lst.size() << endl;

  // deque

  deque<int> deq = 1;

  cout << "deque size: " << deq.size() << endl;

  // set

  set<int> s = 2;

  cout << "set size: " << s.size() << endl;

  // map

  map<int, string> m = { "one", 2, 3};

  cout << "map size: " << m.size() << endl;

  return 0;

}

在上述代码中,我们使用了多个STL容器,包括vector、list、deque、set和map。对于每种容器,我们都可以用size()函数来获取它的大小。

总结

无论是对于数组还是STL容器,在C++中使用size()函数都是非常方便的。对于数组来说,使用size()函数可以更方便地获取数组的大小,同时也可以避免sizeof运算符无法获取数组大小的问题。对于STL容器来说,size()函数可以用于获取容器元素的数量,可以帮助我们更好地了解容器的状态。因此,掌握size()函数的使用方法对于C++程序员来说非常重要。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复