0

C++ Extensions for Library Fundamentals, Version 2中,声明对于string_view构造函数:

constexpr basic_string_view(const charT* str, size_type len);

Requires: [str,str + len) is a valid range.

但没有定义什么是“有效范围”。如果 astring_view是用指向非拥有内存的指针构造的,它是未定义的行为吗?

此外,是否要求 a在其整个生命周期内string_view 始终指向拥有的内存,还是仅适用于构造函数?

如果是这样,这个决定的理由是什么?

4

0 回答 0