mirror of
https://github.com/nlohmann/json.git
synced 2025-07-31 10:24:23 +03:00
📝 add more API documentation
This commit is contained in:
61
doc/mkdocs/docs/api/basic_json/back.md
Normal file
61
doc/mkdocs/docs/api/basic_json/back.md
Normal file
@ -0,0 +1,61 @@
|
||||
# basic_json::back
|
||||
|
||||
```cpp
|
||||
reference back();
|
||||
|
||||
const_reference back() const;
|
||||
```
|
||||
|
||||
Returns a reference to the last element in the container. For a JSON container `c`, the expression `c.back()` is
|
||||
equivalent to
|
||||
|
||||
```cpp
|
||||
auto tmp = c.end();
|
||||
--tmp;
|
||||
return *tmp;
|
||||
```
|
||||
|
||||
## Return value
|
||||
|
||||
In case of a structured type (array or object), a reference to the last element is returned. In case of number, string,
|
||||
boolean, or binary values, a reference to the value is returned.
|
||||
|
||||
## Exceptions
|
||||
|
||||
If the JSON value is `#!json null`, exception
|
||||
[`invalid_iterator.214`](../../home/exceptions.md#jsonexceptioninvalid_iterator214) is thrown.
|
||||
|
||||
## Exception safety
|
||||
|
||||
Strong guarantee: if an exception is thrown, there are no changes in the JSON value.
|
||||
|
||||
## Complexity
|
||||
|
||||
Constant.
|
||||
|
||||
## Note
|
||||
|
||||
!!! danger
|
||||
|
||||
Calling `back` on an empty array or object is undefined behavior and is **guarded by an assertion**!
|
||||
|
||||
## Example
|
||||
|
||||
??? example
|
||||
|
||||
The following code shows an example for `back()`.
|
||||
|
||||
```cpp
|
||||
--8<-- "examples/back.cpp"
|
||||
```
|
||||
|
||||
Output:
|
||||
|
||||
```json
|
||||
--8<-- "examples/back.output"
|
||||
```
|
||||
|
||||
## Version history
|
||||
|
||||
- Added in version 1.0.0.
|
||||
- Adjusted code to return reference to binary values in version 3.8.0.
|
Reference in New Issue
Block a user