Как безопасно закрыть мимику C ++ оболочки - PullRequest
0 голосов
/ 18 февраля 2019

Я пытаюсь кодировать базовую оболочку на C ++, которая отображает подсказку ($) и ждет ввода пользователя.Я могу это исправить, но проблема в том, что программа заканчивается после первого выполнения пользовательского ввода.

У меня есть классы для приглашения и команд.Класс подсказки отображает подсказку, получает пользовательский ввод, анализирует его и вызывает соответствующие функции command-> execute ().Как после выполнения первой команды заставить программу вернуться к отображению командной строки и запросить ввод?И как мне безопасно выйти из всей программы, когда пользователь вводит exit?

Ниже приведен фрагмент того, что происходит при запуске.Я хочу, чтобы $ снова отображался (и ждал ввода), после hello.

$ ls -a && echo hello
.   a.log  a.out   command.h  or.h      separate.h  tmp.log
..  and.h  base.h  main.cpp   Prompt.h  tmp.cpp     tst
hello

Я думаю, что мне интересно, как мне создать свой собственныйфункция выхода, которая заставляет main возвращать?Спасибо!

1 Ответ

0 голосов
/ 18 февраля 2019

Я решил просто использовать функцию, которая вызывает std :: exit (0).Это может / не может быть идеальным, но так как моя программа небольшая, я надеюсь, что все будет хорошо.

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