c – 在STL迭代器的上下文中,什么是单数和非奇异值?

c – 在STL迭代器的上下文中,什么是单数和非奇异值?,第1张

概述“C标准”(2003年)第24.1 / 5节, Just as a regular pointer to an array guarantees that there is a pointer value pointing past the last element of the array, so for any iterator type there is an iterator value “C标准”(2003年)第24.1 / 5节,

Just as a regular pointer to an array
guarantees that there is a pointer
value pointing past the last element
of the array,so for any iterator type
there is an iterator value that points
past the last element of a
corresponding container. These values
are called past-the-end values. Values
of an iterator i for which the
Expression *i is defined are called
dereferenceable. The library never
assumes that past-the-end values are
dereferenceable. Iterators can also
have singular values that are not
associated with any container.
[Example: After the declaration of an
uninitialized pointer x (as with int*
x;),x must always be assumed to have
a singular value of a pointer.]
Results of most Expressions are
undefined for singular values; the
only exception is an assignment of a
non-singular value to an iterator that
holds a singular value. In this case
the singular value is overwritten the
same way as any other value.
Dereferenceable values are always
nonsingular.

我真的不明白粗体显示的文字吗?

>什么是奇异值和非奇异值?他们如何定义?在哪里?
>如何以及为什么无法理解的价值观永远是非奇异的?

解决方法

Iterators can also have singular values that are not associated with any container.

我想这是它的定义.

How and why dereferenceable values are always nonsingular?

因为如果不这样做,那么取消引用它们就是未定义的行为.

总结

以上是内存溢出为你收集整理的c – 在STL迭代器的上下文中,什么是单数和非奇异值?全部内容,希望文章能够帮你解决c – 在STL迭代器的上下文中,什么是单数和非奇异值?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1248828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存