У меня есть программа, которая должна сделать карту с проверкой времени компиляции карту из одного известного набора значений в другой известный набор значений:
in out
------------
8 37
10 61
12 92
13 1/4 109
15 1/4 151
etc
Это было бы легко, если бы входные данные были либо целыми, либо равномерно распределенными. Я собираюсь перебирать строки, но также хочу иметь возможность выполнять поиск в удобочитаемой усадьбе.
Моя текущая мысль (которая мне не нравится) состоит в том, чтобы определить перечисление как
enum Size
{
_8,
_10,
_12,
_13_25,
_15_25,
// etc
}
, а затем настройте его на 2 поиска.
Есть идеи получше?
Редактировать: Моя главная задача - ограничить то, что я могу попытаться посмотреть. Я бы хотел, чтобы даже не скомпилировал , если код может попытаться найти что-то недопустимое.
Множество мало, и время итерации практически не имеет значения.
Я не видел ничего, что принесло бы мне пользу от перечисления, так что пока я с этим согласен. OTOH Я буду следить за этим вопросом.
*
Примечание: меня не волнует проблема с указателями, а что нет, просто прямой код, такой как циклы и назначения переменных.
Мельчайший блеск : я упростил вышеприведенное для ясности и общности. У меня на самом деле есть таблица, которая имеет 3 нецелые, неоднородные оси и одну нечисловую ось. И на данный момент я не уверен, в каких направлениях мне понадобится перечислять его.
несколько ссылок, чтобы дать представление о том, что я ищу:
Boost :: SI и моя D версия из такая же идея