Я пишу новую реализацию существующего программного обеспечения (реализация чистой комнаты, поэтому нет доступа к старому коду), а также новый интерфейс командной строки. Мне нужно эмулировать старый интерфейс для совместимости с существующими рабочими процессами.Я выбираю между старым и новым интерфейсом в зависимости от имени, с которым вызывается исполняемый файл, например, busybox.
Старый интерфейс командной строки, по существу, использует пары ключ-значение, но без каких-либо символов «-» или «=».например,
./oldcode Key1 value1 Key2 value2 Key3 value3 ...
Я уже использую повышение, поэтому хотел бы придерживаться program_options, если я могу.Проще всего было бы просто разобрать параметры, не требуя и «-» в начале аргумента, но я не вижу способа сделать это.
Возможно ли это с помощью program_options или мне лучше написатьпользовательский парсер для этого?