2014-01-15 3 views
-5

Есть ли простой способ в C++ присвоить значение char? Я хочу, чтобы получить список символов, и подключить их к значению, например:Назначить значения символам

  • а - истинный
  • б - истинный
  • C - ложный
  • г - истинный

есть ли простой способ, как Словарь в C#?

+3

Вы можете использовать std :: map возможно? –

+0

Ваша терминология несколько запутанна. Присвоение значения символу 'char' означает' char c; c = 'x'; '. – juanchopanza

+0

@juanchopanza: Я тоже так думал. Показанный пример использования и использование слова «словарь» побудили меня поверить, что он искал какой-то ассоциативный контейнер. Однако это было предположение. –

ответ

2

Ближайший C++ аналог "словарь" объект типа является std::map:

#include <map> 

int main() 
{ 
    std::map <char, bool> myDictionary; 
    myDictionary ['a'] = true; 
    myDictionary ['b'] = true; 
    myDictionary ['r'] = false; 
} 

Вы можете осуществлять поиск на наличие элементов:

[C++ 11]

auto it = myDictionary.find ('x'); 
assert (it == myDictionary.end()); // not found 

it = myDictionary.find ('a'); 
assert (it != myDictionary.end()); // found 
assert (it->second == true); // assert that a is mapped to true 
+0

@sftrabbit: История изменений предлагает удалить мою ссылку, но ссылка по-прежнему активна. Что вы на самом деле изменили? –

+0

У вас были кодовые цитаты по ссылке, поэтому он не работал должным образом. Я положил их внутрь. –

+0

@sftrabbit: Ах, спасибо за это! –

Смежные вопросы