xtd 0.2.0
Loading...
Searching...
No Matches
xtd::collections::generic::idictionary< key_t, value_t > Class Template Referenceabstract
Inheritance diagram for xtd::collections::generic::idictionary< key_t, value_t >:
xtd::collections::generic::icollection< xtd::collections::generic::key_value_pair< key_t, value_t > > xtd::collections::generic::ienumerable< type_t > xtd::collections::generic::extensions::collection_operators< type_t, collection_t > xtd::interface xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > > xtd::collections::generic::extensions::enumerable< ienumerable< type_t >, type_t > xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >

Definition

template<class key_t, class value_t>
class xtd::collections::generic::idictionary< key_t, value_t >

Represents a generic collection of key/value pairs.

Definition
template<class key_t, class value_t>
class idictionary : public xtd::collections::generic::icollection<xtd::collections::generic::key_value_pair<key_t, value_t>>;
Defines methods to manipulate generic collections.
Definition icollection.hpp:45
Represents a generic collection of key/value pairs.
Definition idictionary.hpp:44
Header
#include <xtd/collections/generic/idictionary>
Namespace
xtd::collections::generic
Library
xtd.core
Remarks
The xtd::collections::generic::idictionary <key_t, value_t> interface is the base interface for generic collections of key/value pairs.
Each element is a key/value pair stored in a xtd::collections::generic::key_value_pair <key_t, value_t> object.
Each pair must have a unique key. Implementations can vary in whether they allow key to be empty. The value can be empty and does not have to be unique. The idictionary <key_t, value_t> interface allows the contained keys and values to be enumerated, but it does not imply any particular sort order.
The for each statement returns an object of the type of the elements in the collection. Since each element of the xtd::collections::generic::idictionary <key_t, value_t> is a key/value pair, the element type is not the type of the key or the type of the value. Instead, the element type is xtd::collections::generic::key_value_pair <key_t, value_t>. For example:
for (const key_value_pair<int, string>& kvp : my_dictionary)
console::write_line("key = {}, value = {}", kvp.key(), kvp.value());
Represents the standard input, output, and error streams for console applications.
Definition console.hpp:36
Defines a key/value pair that can be set or retrieved.
Definition key_value_pair.hpp:37
Or with auto key type and the value type. For example:
for (const auto& [key, value] : my_dictionary)
console::write_line("key = {}, value = {}", key, value);

Public Aliases

using key_type = key_t
 Represents the dictionary key type.
 
using mapped_type = value_t
 Represents the dictionary mapped type.
 
using value_type = typename xtd::collections::generic::icollection< xtd::collections::generic::key_value_pair< key_t, value_t > >::value_type
 Represents the xtd::collections::generic::idictionary value type.
 
using iterator = typename xtd::collections::generic::icollection< value_type >::iterator
 Represents the iterator of xtd::collections::generic::ienumerable value type.
 
using const_iterator = typename xtd::collections::generic::icollection< value_type >::const_iterator
 Represents the const iterator of xtd::collections::generic::ienumerable value type.
 
using key_collection = xtd::collections::generic::list< key_type >
 Represents the idictionary key collection type.
 
using value_collection = xtd::collections::generic::list< mapped_type >
 Represents the idictionary value collection type.
 

Public Properties

virtual key_collection keys () const noexcept=0
 Gets an xtd::collections::generic::icollection <type_t> containing the keys of the xtd::collections::generic::idictionary <key_t, value_t>.
 
virtual value_collection values () const noexcept=0
 Gets an xtd::collections::generic::icollection <type_t> containing the values of the xtd::collections::generic::idictionary <key_t, value_t>.
 

Public Methods

virtual void add (const key_t &key, const value_t value)=0
 Adds an element with the provided key and value to the xtd::collections::generic::idictionary <key_t, value_t>.
 
virtual bool contains_key (const key_t &key) const noexcept=0
 Determines whether the xtd::collections::generic::idictionary <key_t, value_t> contains an element with the specified key.
 
virtual bool remove (const key_t &key) noexcept=0
 Removes the element with the specified key from the xtd::collections::generic::idictionary <key_t, value_t>.
 
virtual bool try_get_value (const key_t &key, value_t &value) const =0
 Gets the value associated with the specified key.
 

Public Operators

virtual const value_t & operator[] (const key_t &key) const =0
 Gets the element with the specified key.
 
virtual value_t & operator[] (const key_t &key)=0
 Sets the element with the specified key.
 

Additional Inherited Members

- Public Types inherited from xtd::collections::generic::icollection< xtd::collections::generic::key_value_pair< key_t, value_t > >
using value_type = typename xtd::collections::generic::ienumerable< xtd::collections::generic::key_value_pair< key_t, value_t > >::value_type
 Represents the xtd::collections::generic::icollection value type.
 
using iterator = typename xtd::collections::generic::ienumerable< xtd::collections::generic::key_value_pair< key_t, value_t > >::iterator
 Represents the iterator of xtd::collections::generic::ienumerable value type.
 
using const_iterator = typename xtd::collections::generic::ienumerable< xtd::collections::generic::key_value_pair< key_t, value_t > >::const_iterator
 Represents the const iterator of xtd::collections::generic::ienumerable value type.
 
- Public Types inherited from xtd::collections::generic::ienumerable< type_t >
using value_type = type_t
 Represents the xtd::collections::generic::ienumerable value type.
 
using iterator = typename xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > >::iterator
 Represents the iterator of xtd::collections::generic::ienumerable value type.
 
using const_iterator = typename xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > >::const_iterator
 Represents the const iterator of xtd::collections::generic::ienumerable value type.
 
- Public Types inherited from xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > >
using iterator = enumerable_iterator
 Represents the iterator of enumarable value type.
 
using const_iterator = const enumerable_iterator
 Represents the const iterator of enumarable value type.
 
- Public Types inherited from xtd::collections::generic::extensions::enumerable< ienumerable< type_t >, type_t >
using enumerable_type = ienumerable< type_t >
 Represents the ienumerable enumerable type.
 
using source_type = type_t
 Represents the ienumerable source type.
 
using ienumerable = typename xtd::linq::enumerable::ienumerable< type_t >
 Represents the ienumerable value type.
 
using list = typename xtd::linq::enumerable::list< type_t >
 Represents the list value type.
 
- Public Member Functions inherited from xtd::collections::generic::icollection< xtd::collections::generic::key_value_pair< key_t, value_t > >
virtual xtd::size count () const noexcept=0
 Gets the number of elements contained in the xtd::collections::generic::icollection <type_t>.
 
virtual bool is_read_only () const noexcept=0
 Gets a value indicating whether the xtd::collections::generic::icollection <type_t> is read-only.
 
virtual bool is_synchronized () const noexcept=0
 Gets a value indicating whether access to the xtd::collections::generic::icollection <type_t> is synchronized (thread safe).
 
virtual const xtd::objectsync_root () const noexcept=0
 Gets an object that can be used to synchronize access to the the xtd::collections::generic::icollection <type_t>.
 
virtual void add (const xtd::collections::generic::key_value_pair< key_t, value_t > &item)=0
 Adds an item to the xtd::collections::generic::icollection <type_t>.
 
virtual void clear ()=0
 Removes all items from the xtd::collections::generic::icollection <type_t>.
 
virtual bool contains (const xtd::collections::generic::key_value_pair< key_t, value_t > &item) const noexcept=0
 Determines whether the xtd::collections::generic::icollection <type_t> contains a specific value.
 
virtual void copy_to (xtd::array< xtd::collections::generic::key_value_pair< key_t, value_t > > &array, xtd::size array_index) const=0
 Copies the elements of the xtd::collections::generic::icollection <type_t> to an xtd::array, starting at a particular xtd::array index.
 
virtual bool remove (const xtd::collections::generic::key_value_pair< key_t, value_t > &item)=0
 Removes the first occurrence of a specific object from the xtd::collections::generic::icollection <type_t>.
 
- Public Member Functions inherited from xtd::collections::generic::ienumerable< type_t >
virtual xtd::collections::generic::enumerator< type_t > get_enumerator () const =0
 Returns an enumerator that iterates through a collection.
 
- Public Member Functions inherited from xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > >
virtual const_iterator begin () const
 Returns an iterator to the first element of the enumarable.
 
virtual iterator begin ()
 Returns an iterator to the first element of the enumarable.
 
virtual const_iterator cbegin () const
 Returns an iterator to the first element of the enumarable.
 
virtual const_iterator cend () const
 Returns an iterator to the element following the last element of the enumarable.
 
virtual const_iterator end () const
 Returns an iterator to the element following the last element of the enumarable.
 
virtual iterator end ()
 Returns an iterator to the element following the last element of the enumarable.
 
- Public Member Functions inherited from xtd::collections::generic::extensions::enumerable< ienumerable< type_t >, type_t >
type_t aggregate (const std::function< type_t(const type_t &, const type_t &)> &func) const
 Applies an accumulator function over a sequence.
 
type_t aggregate (const type_t &seed, const std::function< type_t(const type_t &, const type_t &)> &func) const
 Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value.
 
accumulate_t aggregate (const accumulate_t &seed, const std::function< accumulate_t(const type_t &, const accumulate_t &)> &func) const
 Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value.
 
type_t aggregate (const type_t &seed, const std::function< type_t(const type_t &, const type_t &)> &func, const std::function< type_t(const type_t &)> &result_selector) const
 Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.
 
result_t aggregate (const accumulate_t &seed, const std::function< accumulate_t(const type_t &, const accumulate_t &)> &func, const std::function< result_t(const accumulate_t &)> &result_selector) const
 Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.
 
bool all (const std::function< bool(const type_t &)> &predicate) const
 Determines whether all elements of a sequence satisfy a condition.
 
bool any () const noexcept
 Determines whether a sequence contains any elements.
 
bool any (const std::function< bool(const type_t &)> &predicate) const
 Determines whether any element of a sequence satisfies a condition.
 
const ienumerable< type_t > & append (const type_t &element) const noexcept
 Appends a value to the end of the sequence.
 
const ienumerable< type_t > & as_enumerable () const noexcept
 Returns the input typed as xtd::collection::generic::ienumerable <type_t>.
 
auto average () const noexcept
 Computes the average of a sequence of source_t values.
 
const ienumerable< result_t > & cast () const noexcept
 Casts the elements of an xtd::collection::generic::ienumerable to the specified type.
 
const ienumerable< xtd::array< type_t > > & chunk (size_t size) const
 Splits the elements of a sequence into chunks of size at most size.
 
const ienumerable< type_t > & concat (const ienumerable< type_t > &second) const noexcept
 Concatenates two sequences.
 
bool contains (const type_t &value) const noexcept
 Determines whether a sequence contains a specified element by using the default equality comparer.
 
bool contains (const type_t &value, const xtd::collections::generic::iequality_comparer< type_t > &comparer) const noexcept
 Determines whether a sequence contains a specified element by using a specified equality comparer.
 
size_t count () const noexcept
 Returns the number of elements in current sequence.
 
size_t count (const std::function< bool(const type_t &)> &predicate) const noexcept
 Returns a number that represents how many elements in the specified sequence satisfy a condition.
 
const ienumerable< key_value_pair< key_t, xtd::size > > & count_by (const std::function< key_t(const type_t &)> &key_selector) const noexcept
 Returns the count of elements in the current sequence grouped by key.
 
const ienumerable< key_value_pair< key_t, xtd::size > > & count_by (const std::function< key_t(const type_t &)> &key_selector, const iequality_comparer< key_t > &key_comparer) const noexcept
 Returns the count of elements in the current sequence grouped by key.
 
const ienumerable< type_t > & default_if_empty () const noexcept
 Returns the elements of the specified sequence or the type parameter's default value in a singleton collection if the current sequence is empty.
 
const ienumerable< type_t > & default_if_empty (const type_t &default_value) const noexcept
 Returns the elements of the specified sequence or the specified value in a singleton collection if the current sequence is empty.
 
type_t first_or_default (const std::function< bool(const type_t &)> &predicate, const type_t &default_value) const noexcept
 Returns the first element of the sequence that satisfies a condition, or a specified default value if no such element is found.
 
type_t first_or_default (const std::function< bool(const type_t &)> &predicate) const noexcept
 Returns the first element of the sequence that satisfies a condition or a default value if no such element is found.
 
type_t first_or_default (const type_t default_value) const noexcept
 Returns the first element of the sequence that satisfies a condition or a default value if no such element is found.
 
type_t first_or_default () const noexcept
 Returns the first element of the sequence that satisfies a condition or a default value if no such element is found.
 
const ienumerable< result_t > & select (const std::function< result_t(const type_t &)> &selector) const
 Projects each element of a sequence into a new form.
 
const ienumerable< type_t > & select (const std::function< type_t(const type_t &)> &selector) const
 Projects each element of a sequence into a new form.
 
const ienumerable< result_t > & select (const std::function< result_t(const type_t &, size_t index)> &selector) const
 Projects each element of a sequence into a new form by incorporating the element's index.
 
const ienumerable< type_t > & select (const std::function< type_t(const type_t &, size_t index)> &selector) const
 Projects each element of a sequence into a new form by incorporating the element's index.
 
const list< type_t > & to_list () const noexcept
 Creates a xtd::collections::generic::list <type_t> from an xtd::collections::generic::ienumerable <type_t>.
 
const ienumerable< type_t > & where (const std::function< bool(const type_t &)> &predicate) const
 Filters a sequence of values based on a predicate.
 
const ienumerable< type_t > & where (const std::function< bool(const type_t &, size_t)> &predicate) const
 Filters a sequence of values based on a predicate. Each element's index is used in the logic of the predicate function.
 
- Public Member Functions inherited from xtd::collections::generic::extensions::collection_operators< type_t, collection_t >
virtual collection_t & operator<< (const type_t &item)
 The shift left operator adds an item to the xtd::collections::generic::icollection <type_t>.
 
virtual collection_t & operator>> (const type_t &item)
 The shift right operator removes tthe first occurrence of a specific object from the xtd::collections::generic::icollection <type_t>.
 
- Static Public Member Functions inherited from xtd::collections::generic::extensions::enumerable_iterators< type_t, xtd::collections::generic::ienumerable< type_t > >
static target_collection_t::const_iterator to_iterator (typename source_collection_t::const_iterator &value, const source_collection_t &source_collection, const target_collection_t &target_collection) noexcept
 Converts source iterator to target iterator.
 
static target_collection_t::iterator to_iterator (typename source_collection_t::iterator &value, const source_collection_t &source_collection, const target_collection_t &target_collection) noexcept
 Converts source iterator to target iterator.
 
static target_collection_t::const_iterator to_iterator (typename source_collection_t::const_iterator &value, source_collection_t &source_collection, target_collection_t &target_collection) noexcept
 Converts source iterator to target iterator.
 
static target_collection_t::iterator to_iterator (typename source_collection_t::iterator &value, source_collection_t &source_collection, target_collection_t &target_collection) noexcept
 Converts source iterator to target iterator.
 

Member Typedef Documentation

◆ key_type

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::key_type = key_t

Represents the dictionary key type.

◆ mapped_type

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::mapped_type = value_t

Represents the dictionary mapped type.

◆ value_type

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::value_type = typename xtd::collections::generic::icollection<xtd::collections::generic::key_value_pair<key_t, value_t> >::value_type

Represents the xtd::collections::generic::idictionary value type.

◆ iterator

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::iterator = typename xtd::collections::generic::icollection<value_type>::iterator

Represents the iterator of xtd::collections::generic::ienumerable value type.

◆ const_iterator

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::const_iterator = typename xtd::collections::generic::icollection<value_type>::const_iterator

Represents the const iterator of xtd::collections::generic::ienumerable value type.

◆ key_collection

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::key_collection = xtd::collections::generic::list<key_type>

Represents the idictionary key collection type.

◆ value_collection

template<class key_t , class value_t >
using xtd::collections::generic::idictionary< key_t, value_t >::value_collection = xtd::collections::generic::list<mapped_type>

Represents the idictionary value collection type.

Member Function Documentation

◆ keys()

template<class key_t , class value_t >
virtual key_collection xtd::collections::generic::idictionary< key_t, value_t >::keys ( ) const
pure virtualnoexcept

Gets an xtd::collections::generic::icollection <type_t> containing the keys of the xtd::collections::generic::idictionary <key_t, value_t>.

Returns
An xtd::collections::generic::icollection <type_t> containing the keys of the object that implements xtd::collections::generic::idictionary <key_t, value_t>.
Remarks
The order of the keys in the returned xtd::collections::generic::icollection <type_t> is unspecified, but it is guaranteed to be the same order as the corresponding values in the xtd::collections::generic::icollection <type_t> returned by the xtd::collections::generic::idictionary::values property.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ values()

template<class key_t , class value_t >
virtual value_collection xtd::collections::generic::idictionary< key_t, value_t >::values ( ) const
pure virtualnoexcept

Gets an xtd::collections::generic::icollection <type_t> containing the values of the xtd::collections::generic::idictionary <key_t, value_t>.

Returns
An xtd::collections::generic::icollection <type_t> containing the values of the object that implements xtd::collections::generic::idictionary <key_t, value_t>.
Remarks
The order of the values in the returned xtd::collections::generic::icollection <type_t> is unspecified, but it is guaranteed to be the same order as the corresponding values in the xtd::collections::generic::icollection <type_t> returned by the xtd::collections::generic::idictionary::keys property.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ add()

template<class key_t , class value_t >
virtual void xtd::collections::generic::idictionary< key_t, value_t >::add ( const key_t &  key,
const value_t  value 
)
pure virtual

Adds an element with the provided key and value to the xtd::collections::generic::idictionary <key_t, value_t>.

Parameters
keyThe object to use as the key of the element to add.
valueThe object to use as the value of the element to add.
Exceptions
xtd::argument_exceptionAn element with the same key already exists in the xtd::collections::generic::idictionary <key_t, value_t>.
xtd::not_supported_exceptionThe xtd::collections::generic::idictionary <key_t, value_t> is read-only.
Remarks
You can also use the operator [] to add new elements by setting the value of a key that does not exist in the dictionary; for example, my_collection["my_nonexistent_key"] = my_value. However, if the specified key already exists in the dictionary, setting the operator [] overwrites the old value. In contrast, the xtd::collections::generic::idictionary::add method does not modify existing elements.
Implementations can vary in how they determine equality of objects; for example, the xtd::collections::generic::list <type_t> class uses xtd::collections::generic::comparer::default_comparer, whereas the xtd::collections::generic::dictionary <key_t,value_t> class allows the user to specify the xtd::collections::generic::icomparer <type_t> implementation to use for comparing keys.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ contains_key()

template<class key_t , class value_t >
virtual bool xtd::collections::generic::idictionary< key_t, value_t >::contains_key ( const key_t &  key) const
pure virtualnoexcept

Determines whether the xtd::collections::generic::idictionary <key_t, value_t> contains an element with the specified key.

Parameters
keyThe key to locate in the xtd::collections::generic::idictionary <key_t, value_t>.
Returns
true if the xtd::collections::generic::idictionary <key_t, value_t> contains an element with the key; otherwise, false.
Remarks
Implementations can vary in how they determine equality of objects; for example, the xtd::collections::generic::list <type_t> class uses xtd::collections::generic::comparer <type_t>.Default, whereas the xtd::collections::generic::dictionary <key_t, value_t> class allows the user to specify the xtd::collections::generic::icomparer <type_t>x implementation to use for comparing keys.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ remove()

template<class key_t , class value_t >
virtual bool xtd::collections::generic::idictionary< key_t, value_t >::remove ( const key_t &  key)
pure virtualnoexcept

Removes the element with the specified key from the xtd::collections::generic::idictionary <key_t, value_t>.

Parameters
keyThe key of the element to remove.
Returns
true if the element is successfully removed; otherwise, false. This method also returns false if key was not found in the original xtd::collections::generic::idictionary <key_t, value_t>.
Remarks
Implementations can vary in how they determine equality of objects; for example, the xtd::collections::generic::list <type_t> class uses xtd::collections::generic::comparer <type_t>.Default, whereas the xtd::collections::generic::dictionary <key_t, value_t> class allows the user to specify the xtd::collections::generic::icomparer <type_t>x implementation to use for comparing keys.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ try_get_value()

template<class key_t , class value_t >
virtual bool xtd::collections::generic::idictionary< key_t, value_t >::try_get_value ( const key_t &  key,
value_t &  value 
) const
pure virtual

Gets the value associated with the specified key.

Parameters
keyThe key whose value to get.
valueWhen this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter.
Returns
true if the object that implements xtd::collections::generic::idictionary <key_t, value_t> contains an element with the specified key; otherwise, false.
Remarks
This method combines the functionality of the xtd::collections::generic::idictionary::contains_key method and the xtd::collections::generic::idictionary::operator [] property.
If the key is not found, then the value parameter gets the appropriate default value for the type value_t; for example, zero (0) for integer types, false for Boolean types, and null for reference types

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ operator[]() [1/2]

template<class key_t , class value_t >
virtual const value_t & xtd::collections::generic::idictionary< key_t, value_t >::operator[] ( const key_t &  key) const
pure virtual

Gets the element with the specified key.

Parameters
keyThe key of the element to get.
Returns
The element with the specified key.
Exceptions
xtd::collections::generic::key_not_found_exceptionThe property is retrieved and key is not found.
xtd::not_supported_exceptionThe property is set and the xtd::collections::generic::idictionary <key_t, value_t> is read-only.
Remarks
This property provides the ability to access a specific element in the collection by using the following syntax: my_collection[key].
You can also use the operator [] to add new elements by setting the value of a key that does not exist in the dictionary; for example, my_collection["my_nonexistent_key"] = my_value. However, if the specified key already exists in the dictionary, setting the operator []` overwrites the old value. In contrast, the xtd::collections::generic::idictionary::add method does not modify existing elements.
Implementations can vary in how they determine equality of objects; for example, the xtd::collections::generic::list <type_t> class uses xtd::collections::generic::comparer::default_comparer, whereas the xtd::collections::generic::dictionary <key_t,value_t> class allows the user to specify the xtd::collections::generic::icomparer <type_t> implementation to use for comparing keys.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.

◆ operator[]() [2/2]

template<class key_t , class value_t >
virtual value_t & xtd::collections::generic::idictionary< key_t, value_t >::operator[] ( const key_t &  key)
pure virtual

Sets the element with the specified key.

Parameters
keyThe key of the element to set.
Returns
The element with the specified key.
Exceptions
xtd::collections::generic::key_not_found_exceptionThe property is retrieved and key is not found.
xtd::not_supported_exceptionThe property is set and the xtd::collections::generic::idictionary <key_t, value_t> is read-only.
Remarks
This property provides the ability to access a specific element in the collection by using the following syntax: my_collection[key].
You can also use the operator [] to add new elements by setting the value of a key that does not exist in the dictionary; for example, my_collection["my_nonexistent_key"] = my_value. However, if the specified key already exists in the dictionary, setting the operator [] overwrites the old value. In contrast, the xtd::collections::generic::idictionary::add method does not modify existing elements.
Implementations can vary in how they determine equality of objects; for example, the xtd::collections::generic::list <type_t> class uses xtd::collections::generic::comparer::default_comparer, whereas the xtd::collections::generic::dictionary <key_t,value_t> class allows the user to specify the xtd::collections::generic::icomparer <type_t> implementation to use for comparing keys.

Implemented in xtd::collections::generic::dictionary< key_t, value_t, hasher_t, equator_t, allocator_t >.


The documentation for this class was generated from the following file: