Функция ssize
Функция ssize возвращает количество элементов
вектора в виде знакового целого числа типа
ptrdiff_t. В отличие от метода size,
который возвращает беззнаковое значение, ssize
удобно использовать в выражениях, где могут
возникать отрицательные значения, чтобы избежать
предупреждений компилятора о сравнении знаковых и
беззнаковых чисел. Параметров функция не принимает.
Синтаксис
vec.ssize()
Пример
Давайте получим размер вектора с помощью
функции ssize и выведем результат на экран:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec = {1, 2, 3, 4, 5};
cout << vec.ssize() << endl;
return 0;
}
Результат выполнения кода:
5
Пример
Давайте сравним результат ssize с отрицательным
числом - это безопасно, так как функция возвращает
знаковое значение:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<string> vec = {"a", "b", "c", "d", "e"};
int n = -1;
if (vec.ssize() > n) {
cout << "size is greater than -1" << endl;
}
return 0;
}
Результат выполнения кода:
"size is greater than -1"