std::match_results<BidirIt,Alloc>::match_results

来自cppreference.com
< cpp‎ | regex‎ | match results
match_results() : match_results(Allocator()) {}
(1)
explicit match_results( const Allocator& a );
(2)
match_results( const match_results& rhs );
(3)
match_results( const match_results& rhs, const Allocator& a );
(4)
match_results( match_results&& rhs ) noexcept;
(5)
match_results( match_results&& rhs, const Allocator& a );
(6)
1,2) 构造未建立结果状态的匹配结果。
1) 默认构造函数。
2)a 的副本作为分配器构造匹配结果。
构造完成时,ready() 会返回 falsesize() 会返回 0
3-6)rhs 构造匹配结果。
3) 复制构造函数。
4)a 的副本作为分配器构造匹配结果。
5) 移动构造函数。构造完成时,rhs 在合法但未指定的状态。
6)a 的副本作为分配器构造匹配结果。构造完成时,rhs 在合法但未指定的状态。
给定 rhs 在构造前的值为 m[0m.size()) 中的任意整数为 n,构造完成时,以下成员函数应返回指定的值:
成员函数
ready()m.ready()
size()m.size()
str(n)m.str(n)
prefix()m.prefix()
suffix()m.suffix()
 operator[](n) m[n]
length(n)m.length(n)
position(n) m.position(n) 

参数

a-用于此容器所有内存分配的分配器
rhs-用作源以初始化 match_results 的另一 match_results

异常

1-4) 可能会抛出由实现定义的异常。
6)a == rhs.get_allocator()true 时不会抛出异常。

示例

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告应用于出版时的行为正确行为
LWG 2191C++11在重载 (3-6) 的后条件中 n 可以为负只能非负
LWG 2195C++11缺失了知分配器容器 (AllocatorAwareContainer) 要求的构造函数已补充
P0935R0C++11默认构造函数是显式的改成隐式的