C++ map<T1, T2> équivalent en C#

  1. C++ map<key, value> Équivalent en C
  2. C++ unordered_map<key, value> Équivalent en C

Ce tutoriel présentera l’équivalent C# de la map<T1, T2> en C++.

C++ map<key, value> Équivalent en C

La structure de données map<key, value> en C++ permet de contenir des données sous forme de paires key-value. L’alternative la plus proche est la classe Dictionary<Tkey, Tvalue> en C#. La structure de données The Dictionary contient également des données sous forme de paires clé-valeur en C#. Si nous sommes concernés par l’ordre des entrées dans le dictionnaire, nous pouvons utiliser la classe SortedDictionary<Tkey, Tvalue>. L’exemple de code suivant nous montre comment stocker des données sous la forme d’une paire clé-valeur avec la classe SortedDictionary<Tkey, Tvalue> en C#.

using System;
using System.Collections.Generic;

namespace C__map_alternative
{
    class Program
    {
        static void Main(string[] args)
        {
            SortedDictionary<int, string> person = new SortedDictionary<int, string>();
            person.Add(1, "ABC");
            person.Add(2, "DEF");
            person.Add(3, "GHI");
            foreach(var pair in person)
            {
                Console.WriteLine(pair);
            }
        }
    }
}

Production:

[1, ABC]
[2, DEF]
[3, GHI]

Dans le code ci-dessus, nous créons le dictionnaire trié personne avec la classe SortedDictionary<int, string> en C#. Nous passons des données dans le dictionnaire personne sous forme de paires key-value avec la fonction SortedDictionary.Add(). Au final, nous imprimons les données dans le dictionnaire person avec une boucle foreach.

C++ unordered_map<key, value> Équivalent en C

Lorsque nous parlons de la structure de données unordered_map<key, value> en C++, nous nous intéressons uniquement au stockage des données sous forme de paires key-value et non à l’ordre des paires. Dans ce cas, nous pouvons utiliser la classe Dictionary<Tkey, Tvalue> pour stocker des données sous forme de paires key-value en C#. Voir l’exemple ci-dessous.

using System;
using System.Collections.Generic;

namespace C__map_alternative
{
    class Program
    {
        static void Main(string[] args)
        {
            Dictionary<int, string> person = new Dictionary<int, string>();
            person.Add(1, "ABC");
            person.Add(2, "DEF");
            person.Add(3, "GHI");
            foreach (var pair in person)
            {
                Console.WriteLine(pair);
            }
        }
    }
}

Production:

[1, ABC]
[2, DEF]
[3, GHI]

Dans le code ci-dessus, nous créons le dictionnaire non trié person avec la classe Dictionary<int, string> en C#. On passe les données dans le dictionnaire person sous forme de paires key-value avec la fonction Dictionary.Add(). Au final, nous imprimons les données dans le dictionnaire person avec une boucle foreach.

Article connexe - Csharp Dictionary

  • La meilleure façon d'itérer sur un dictionnaire