[#nlohmann-ordered_map-operator_subs-0e]
= xref:nlohmann.adoc[nlohmann]::xref:nlohmann/ordered_map.adoc[ordered&lowbar;map]::operator&lsqb;&rsqb;
:relfileprefix: ../../
:mrdocs:

Subscript operators

== Synopses

Declared in `&lt;nlohmann&sol;ordered&lowbar;map&period;hpp&gt;`

accesses the element with the given key, inserting a default&hyphen;constructed value if it does not exist


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
T&
xref:nlohmann/ordered_map/operator_subs-0a.adoc[operator&lsqb;&rsqb;](xref:nlohmann/ordered_map/key_type.adoc[key&lowbar;type] const& key);
----

[.small]#xref:nlohmann/ordered_map/operator_subs-0a.adoc[_» more&period;&period;&period;_]#

accesses the element with the given key


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
T const&
xref:nlohmann/ordered_map/operator_subs-04.adoc[operator&lsqb;&rsqb;](xref:nlohmann/ordered_map/key_type.adoc[key&lowbar;type] const& key) const;
----

[.small]#xref:nlohmann/ordered_map/operator_subs-04.adoc[_» more&period;&period;&period;_]#

accesses the element with the given key, inserting a default&hyphen;constructed value if it does not exist


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class KeyType&gt;
requires detail&colon;&colon;is&lowbar;usable&lowbar;as&lowbar;key&lowbar;type&lt;key&lowbar;compare, key&lowbar;type, KeyType&gt;&colon;&colon;value
T&
xref:nlohmann/ordered_map/operator_subs-06.adoc[operator&lsqb;&rsqb;](KeyType&& key);
----

[.small]#xref:nlohmann/ordered_map/operator_subs-06.adoc[_» more&period;&period;&period;_]#

accesses the element with the given key


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class KeyType&gt;
requires detail&colon;&colon;is&lowbar;usable&lowbar;as&lowbar;key&lowbar;type&lt;key&lowbar;compare, key&lowbar;type, KeyType&gt;&colon;&colon;value
T const&
xref:nlohmann/ordered_map/operator_subs-02.adoc[operator&lsqb;&rsqb;](KeyType&& key) const;
----

[.small]#xref:nlohmann/ordered_map/operator_subs-02.adoc[_» more&period;&period;&period;_]#

== Exceptions

[cols="1,4"]
|===
| Name| Thrown on
| `std&colon;&colon;out&lowbar;of&lowbar;range`
| if the container does not have an element with the given key
|===

== Return Value

* reference to the value associated with _key_
* const reference to the value associated with _key_

== Parameters

[cols="1,4"]
|===
| Name| Description
| *key* [in]
| key of the element to access
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
