C++ 查找循环队列中的元素数

C++ 查找循环队列中的元素数,c++,arrays,modulus,C++,Arrays,Modulus,假设我使用大小为10的数组实现了一个循环队列。如果不使用C++中的

假设我使用大小为10的数组实现了一个循环队列。如果不使用C++中的函数,人们会如何寻找数组中的元素数量,或者换句话说,使用的索引数量。我想使用模块化数学,因为我知道第一个和最后一个索引,但如何准确地将其校正到返回此大小的函数中

除了使用
sizeof
之外,找不到C样式数组的大小;这就是那个操作符存在的一个原因。我肯定帮不了你

现在,对于C++的
std::array
模板类,只需使用
size()
方法即可


编辑:如果您现在已经找到了最后一个“可能”索引(第一个始终为0),则可以使用该索引加上一个作为长度。

似乎您知道数组的大小,但您想知道数组中有多少索引填充了非空的实际值或默认值。如果是这种情况,最坏的情况是您必须迭代数组并检查每个索引


通过做一点簿记和自己跟踪填充的索引计数,您总是可以让您的生活变得更轻松。每次向数组中添加值时,都要增加计数。删除时减少计数。如果你更新了一个已经填充的索引,就不用计算了。

不要生活在80年代,可以使用
std::array
std::vector