C++ size_t(迭代器1 - 迭代器2)是什么意思

C++ What does size_t(iterator1 - iterator2) mean?

本文关键字:迭代器 是什么 意思 C++ size      更新时间:2023-10-16

iterator1iterator2是结构的两个指针。

我知道size_t(iterator1 - iterator2)是要得到长度。但是我们怎么能使用这样的size_t呢?这类似于像(size_t)(iterator1 - iterator2)这样的强制类型转换吗?

您的语法只是基于表达式 iterator1 - iterator2 的值创建size_t的指令。

size_t不是最好的类型(因为它是unsigned(,而且采用的方法也不是最好的方法。

假设iterator1iterator2是同一容器上的迭代器(否则我呈现的内容和您拥有的内容的行为是未定义的(,

auto diff = std::distance(iterator1, iterator2);

是首选。