检查向量是否为空| C ++ STL

向量本质上是动态数组,它们可以根据元素数调整大小,如果添加或删除元素,向量的大小或内存将自动调整大小。

有两种方法可以检查给定向量是否为空向量

  1. 使用vector :: empty()函数

  2. 使用vector :: size()函数

1)vector :: empty()函数

如果vector为空,则返回true,否则返回false。

语法:

 vector_name.empty();

示例

    Input: 
    vector<int> v1{10, 20, 30, 40, 50 };
    vector<int> v2{};
    
    Function calls:
    v1.empty()
    v2.empty()
    
    Output:
    false
    true

2)vector :: size()函数

它返回向量的元素总数。

语法:

 vector_name.size();

示例

    Input: 
    vector<int> v1{10, 20, 30, 40, 50 };
    vector<int> v2{};
    
    Function calls:
    v1.size()
    v2.size()
    
    Output:
    5
    0

程序1 :(使用vector :: empty()函数)

#include <iostream>
#include <vector>

using namespace std;

int main() {
	//声明并分配向量
	//非空
	vector<int> v1{ 10, 20, 30, 40, 50 };
	//空 
	vector<int> v2{};

	//检查向量是否为空 
	//使用empty()函数
	if(v1.empty())
		cout << "vector: v1 is an empty vector" << endl;
	else
		cout << "vector: v1 has " << v1.size () << " elements" << endl;

	if (v2.empty ())
		cout << "vector: v2 is an empty vector" << endl;
	else
		cout << "vector: v2 has " << v2.size () << " elements" << endl ;
	
	return 0;
}

输出结果

    vector: v1 has 5 elements
    vector: v2 is an empty vector