<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="">= `value` JSON文档在内存中表示为&lt;<ref_value>&gt;的实例：一种{req_Regular}类型，满足{req_DefaultConstructible}、{req_CopyConstructible}、{req_CopyAssignable}、{req_MoveConstructible}、{req_MoveAssignable}以及许多分配器感知容器的要求。它在内部实现为一个https://en.wikipedia.org/wiki/Tagged_union[__variant__]（变体），并且可以动态存储六种已定义的JSON值类型中的任意一种：</ref_value></string>
    <string name="">**空值**：一种</string>
    <string name="">https://en.cppreference.com/w/cpp/utility/variant/monostate[__monostate__]（单态）值，等同于`nullptr`。</string>
    <string name="">**布尔值**：布尔类型，取值为`true`或`false`。</string>
    <string name="">**数值**：整型或浮点型值。</string>
    <string name="">**字符串**：由零个或多个Unicode字符组成的序列，</string>
    <string name="">类似于{std_string}。</string>
    <string name="">**数组**：值的有序列表，类似于{std_vector}。</string>
    <string name="">**对象**：名称/值对的集合，也称为</string>
    <string name="">https://en.wikipedia.org/wiki/Associative_array[__关联数组__]。</string>
    <string name="">处理值</string>
    <string name="">从`nullptr`构造或默认构造的 &lt;<ref_value>&gt; 表示一个空的JSON元素：</ref_value></string>
    <string name="">成员函数&amp;lt;&lt;ref_value_kind,`value::kind`&gt;&amp;gt;可用于查询值中存储的种类。或者，也可以使用诸如&amp;lt;&lt;ref_value_is_object,`value::is_object`&gt;&amp;gt;、&amp;lt;&lt;ref_value_is_number,`value::is_number`&gt;&amp;gt; 等成员函数来检查值是否为特定种类：&lt;/ref_value_is_number,`value::is_number`&gt;&lt;/ref_value_is_object,`value::is_object`&gt;&lt;/ref_value_kind,`value::kind`&gt;</string>
    <string name="">诸如 &amp;lt;&lt;ref_value_if_object,`value::if_object`&gt;&amp;gt; 的函数在值为对象时返回指向该对象的指针，否则返回空指针。这使得它们既可用于上述的布尔上下文，也可用于赋值或条件表达式中，以捕获指针的值：&lt;/ref_value_if_object,`value::if_object`&gt;</string>
    <string name="">&amp;lt;&lt;ref_value&gt;&amp;gt; 构造之后，其类型可根据赋值内容或通过调用&amp;lt;&lt;ref_value_emplace_array,`value::emplace_array`&gt;&amp;gt; 或 &amp;lt;&lt;ref_value_emplace_bool,`value::emplace_bool`&gt;&amp;gt; 等函数来改变。如果赋值成功，即未引发任何异常，则该值将被替换。否则，原值保持不变。所有可能修改值失败的操作均提供强异常安全保证。&lt;/ref_value_emplace_bool,`value::emplace_bool`&gt;&lt;/ref_value_emplace_array,`value::emplace_array`&gt;&lt;/ref_value&gt;</string>
    <string name="">下表列出了所有用于判断和访问 &lt;<ref_value>&gt; 内容的方法：</ref_value></string>
    <string name="">.&lt;<ref_value>&gt;访问器 [%autowidth, cols=8] |=== |种类 |表示形式 |置入 |种类测试 |指针访问 |`result`访问 |受检访问 |非受检访问</ref_value></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::array`&gt;&amp;gt;&lt;/ref_kind,`kind::array`&gt;</string>
    <string name=":95">&lt;<ref_array>&gt;</ref_array></string>
    <string name="">&lt;<ref_value_emplace_array>&gt;</ref_value_emplace_array></string>
    <string name="">&lt;<ref_value_is_array>&gt;</ref_value_is_array></string>
    <string name="">&lt;<ref_value_if_array>&gt;</ref_value_if_array></string>
    <string name="">&lt;<ref_value_try_as_array>&gt;</ref_value_try_as_array></string>
    <string name="">&lt;<ref_value_as_array>&gt;</ref_value_as_array></string>
    <string name="">&lt;<ref_value_get_array>&gt;</ref_value_get_array></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::object`&gt;&amp;gt;&lt;/ref_kind,`kind::object`&gt;</string>
    <string name=":95">&lt;<ref_object>&gt;</ref_object></string>
    <string name="">&lt;<ref_value_emplace_object>&gt;</ref_value_emplace_object></string>
    <string name="">&lt;<ref_value_is_object>&gt;</ref_value_is_object></string>
    <string name="">&lt;<ref_value_if_object>&gt;</ref_value_if_object></string>
    <string name="">&lt;<ref_value_try_as_object>&gt;</ref_value_try_as_object></string>
    <string name="">&lt;<ref_value_as_object>&gt;</ref_value_as_object></string>
    <string name="">&lt;<ref_value_get_object>&gt;</ref_value_get_object></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::string`&gt;&amp;gt;&lt;/ref_kind,`kind::string`&gt;</string>
    <string name=":95">&lt;<ref_string>&gt;</ref_string></string>
    <string name="">&lt;<ref_value_emplace_string>&gt;</ref_value_emplace_string></string>
    <string name="">&lt;<ref_value_is_string>&gt;</ref_value_is_string></string>
    <string name="">&lt;<ref_value_if_string>&gt;</ref_value_if_string></string>
    <string name="">&lt;<ref_value_try_as_string>&gt;</ref_value_try_as_string></string>
    <string name="">&lt;<ref_value_as_string>&gt;</ref_value_as_string></string>
    <string name="">&lt;<ref_value_get_string>&gt;</ref_value_get_string></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::int64`&gt;&amp;gt;&lt;/ref_kind,`kind::int64`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/types/integer[`std::int64_t`]</string>
    <string name="">&lt;<ref_value_emplace_int64>&gt;</ref_value_emplace_int64></string>
    <string name="">&lt;<ref_value_is_int64>&gt;</ref_value_is_int64></string>
    <string name="">&lt;<ref_value_if_int64>&gt;</ref_value_if_int64></string>
    <string name="">&lt;<ref_value_try_as_int64>&gt;</ref_value_try_as_int64></string>
    <string name="">&lt;<ref_value_as_int64>&gt;</ref_value_as_int64></string>
    <string name="">&lt;<ref_value_get_int64>&gt;</ref_value_get_int64></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::uint64`&gt;&amp;gt;&lt;/ref_kind,`kind::uint64`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/types/integer[`std::uint64_t`]</string>
    <string name="">&lt;<ref_value_emplace_uint64>&gt;</ref_value_emplace_uint64></string>
    <string name="">&lt;<ref_value_is_uint64>&gt;</ref_value_is_uint64></string>
    <string name="">&lt;<ref_value_if_uint64>&gt;</ref_value_if_uint64></string>
    <string name="">&lt;<ref_value_try_as_uint64>&gt;</ref_value_try_as_uint64></string>
    <string name="">&lt;<ref_value_as_uint64>&gt;</ref_value_as_uint64></string>
    <string name="">&lt;<ref_value_get_uint64>&gt;</ref_value_get_uint64></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::double_`&gt;&amp;gt;&lt;/ref_kind,`kind::double_`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/language/types[`double`]</string>
    <string name="">&lt;<ref_value_emplace_double>&gt;</ref_value_emplace_double></string>
    <string name="">&lt;<ref_value_is_double>&gt;</ref_value_is_double></string>
    <string name="">&lt;<ref_value_if_double>&gt;</ref_value_if_double></string>
    <string name="">&lt;<ref_value_try_as_double>&gt;</ref_value_try_as_double></string>
    <string name="">&lt;<ref_value_as_double>&gt;</ref_value_as_double></string>
    <string name="">&lt;<ref_value_get_double>&gt;</ref_value_get_double></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::bool_`&gt;&amp;gt;&lt;/ref_kind,`kind::bool_`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/language/types[`bool`]</string>
    <string name="">&lt;<ref_value_emplace_bool>&gt;</ref_value_emplace_bool></string>
    <string name="">&lt;<ref_value_is_bool>&gt;</ref_value_is_bool></string>
    <string name="">&lt;<ref_value_if_bool>&gt;</ref_value_if_bool></string>
    <string name="">&lt;<ref_value_try_as_bool>&gt;</ref_value_try_as_bool></string>
    <string name="">&lt;<ref_value_as_bool>&gt;</ref_value_as_bool></string>
    <string name="">&lt;<ref_value_get_bool>&gt;</ref_value_get_bool></string>
    <string name=":95">&amp;lt;&lt;ref_kind,`kind::null`&gt;&amp;gt;&lt;/ref_kind,`kind::null`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/language/nullptr[`std::nullptr_t`]</string>
    <string name="">&lt;<ref_value_emplace_null>&gt;</ref_value_emplace_null></string>
    <string name="">&lt;<ref_value_is_null>&gt;</ref_value_is_null></string>
    <string name="">^|— |&lt;<ref_value_try_as_null>&gt; ^|— ^|—</ref_value_try_as_null></string>
    <string name="">&amp;lt;&lt;ref_value&gt;&amp;gt; 的置入成员函数返回对底层表示形式的类型化引用。例如，前例中对 &amp;lt;&lt;ref_value_emplace_string,`value::emplace_string`&gt;&amp;gt; 的调用返回一个 &amp;lt;&lt;ref_string,`string&amp;`&gt;&amp;gt; 。下表列出了每种 kind 对应的底层类型：&lt;/ref_string,`string&amp;`&gt;&lt;/ref_value_emplace_string,`value::emplace_string`&gt;&lt;/ref_value&gt;</string>
    <string name="">种类</string>
    <string name="">类型</string>
    <string name="">描述</string>
    <string name=":175">&amp;lt;&lt;ref_kind,`kind::object`&gt;&amp;gt;&lt;/ref_kind,`kind::object`&gt;</string>
    <string name=":175">&lt;<ref_object>&gt;</ref_object></string>
    <string name="">一个关联数组，其键为字符串，值为 &lt;<ref_value>&gt; 元素，接口</ref_value></string>
    <string name="">类似于 {std_unordered_map}，并保留插入顺序</string>
    <string name=":183">&amp;lt;&lt;ref_kind,`kind::array`&gt;&amp;gt;&lt;/ref_kind,`kind::array`&gt;</string>
    <string name=":183">&lt;<ref_array>&gt;</ref_array></string>
    <string name="">一个&lt;<ref_value>&gt;元素的有序列表，其接口类似于</ref_value></string>
    <string name="">{std_vector}。</string>
    <string name=":188">&amp;lt;&lt;ref_kind,`kind::string`&gt;&amp;gt;&lt;/ref_kind,`kind::string`&gt;</string>
    <string name=":188">&lt;<ref_string>&gt;</ref_string></string>
    <string name="">一个采用https://en.wikipedia.org/wiki/UTF-8[__UTF-8__]编码的</string>
    <string name="">https://en.wikipedia.org/wiki/Unicode[Unicode]字符https://en.wikipedia.org/wiki/String_(computer_science)[字符串]，其接口类似于{std_string}。</string>
    <string name=":195">&amp;lt;&lt;ref_kind,`kind::int64`&gt;&amp;gt;&lt;/ref_kind,`kind::int64`&gt;</string>
    <string name="">`std::int64_t`</string>
    <string name="">64位有符号整数。</string>
    <string name=":195">&amp;lt;&lt;ref_kind,`kind::uint64`&gt;&amp;gt;&lt;/ref_kind,`kind::uint64`&gt;</string>
    <string name="">`std::uint64_t`</string>
    <string name="">64位无符号整数。</string>
    <string name=":195">&amp;lt;&lt;ref_kind,`kind::double_`&gt;&amp;gt;&lt;/ref_kind,`kind::double_`&gt;</string>
    <string name="">`double`</string>
    <string name="">一个`double`，用于保存浮点型值。</string>
    <string name=":195">&amp;lt;&lt;ref_kind,`kind::bool_`&gt;&amp;gt;&lt;/ref_kind,`kind::bool_`&gt;</string>
    <string name="">https://en.cppreference.com/w/cpp/keyword/bool[`bool`]</string>
    <string name="">一个`bool`，用于保存`true`或`false`。</string>
    <string name=":195">&amp;lt;&lt;ref_kind,`kind::null`&gt;&amp;gt;&lt;/ref_kind,`kind::null`&gt;</string>
    <string name="">^| — | 一个表示空值的monostate值。 |===</string>
    <string name="">置入操作的返回值可用于执行赋值，或捕获对底层元素的引用以供后续检查或修改：</string>
    <string name="">如果已知 &amp;lt;&lt;ref_value&gt;&amp;gt; 的 &amp;lt;&lt;ref_kind&gt;&amp;gt;，可使用诸如 &amp;lt;&lt;ref_value_as_bool,`value::as_bool`&gt;&amp;gt; 或 &amp;lt;&lt;ref_value_as_string,`value::as_string`&gt;&amp;gt; 等函数，在不改变现有值的情况下获取对底层表示的引用：&lt;/ref_value_as_string,`value::as_string`&gt;&lt;/ref_value_as_bool,`value::as_bool`&gt;&lt;/ref_kind&gt;&lt;/ref_value&gt;</string>
    <string name="">然而，如上所示，如果 &lt;<ref_value>&gt; 中的实际类型与函数签名所指定的类型不匹配，这些函数会抛出异常。这一行为可作为一种简洁的验证形式：以预期类型直接访问值，若 JSON 结构无效，则通过捕获异常进行处理。</ref_value></string>
    <string name="">我们可以通过请求一个可能为空的指针（而非引用）来查询值中特定种类的底层表示形式，而不会抛出异常。这里我们使用 &amp;lt;&lt;ref_value_if_string,`value::if_string`&gt;&amp;gt; 来条件执行赋值操作，而无需使用异常：&lt;/ref_value_if_string,`value::if_string`&gt;</string>
    <string name="">返回 {ref_result} 的函数允许您同时使用上述两种方式：</string>
    <string name="">格式化输出</string>
    <string name="">当将 &lt;<ref_value>&gt; 输出到 {std_ostream} 时，其结果等同于调用 &lt;<ref_serialize>&gt; 所生成的序列化 JSON。</ref_serialize></ref_value></string>
</resources>
