Заполнение хеш-таблицы из макросов #define - PullRequest
1 голос
/ 17 февраля 2012

Я хочу создать хеш-карту / таблицу, заполнив ключ с помощью #defined параметров и хеш-значение значением, соответствующим заданным параметрам ... Так что я могу легко добавить больше параметров в будущем.

        //key    //value
#define paramA   1
#define paramB   2

Есть ли способ сделать это?

1 Ответ

2 голосов
/ 17 февраля 2012

Независимо от того, как вы создаете свою таблицу, вам придется как-то явно ее заполнять, добавляя этих членов в таблицу.Таким образом, не имеет значения, если ваши участники #defined, настроены как consts или что-то еще - работа по добавлению их в таблицу все еще продолжается.

Я бы сказал, что вы могли бы сделать лучше всего (учитывая вашу цель) состоит в том, чтобы настроить #define для фактического определения массива значений, и установить второй #define для определения размера этого массива.Затем можно было бы заполнить вашу хэш-таблицу циклом, циклически перебирая массив в зависимости от размера.

Я думаю, это звучит как запах дизайна, хотя, возможно, вы захотите переосмыслить то, что делаете, и искатьлучший способ - например, чтение из базы данных или файла?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...