Строковый ввод в ошибках SFML - PullRequest
0 голосов
/ 12 декабря 2018

Итак, я хочу создать цикл, в котором я буду вводить строку (чтобы потом я мог рисовать текст из этой строки на экране), команда не является «q», тогда мы продолжаем вводить строку.Каждый раз, когда вводится строка, будет открываться новое окно SFML.

Тем не менее, кажется, что это бесконечный цикл с ошибкой "underflow".Интересно, можете ли вы помочь мне с логикой моего кода.Большое спасибо!

int main(){ 
    char command;
    cout << "Enter command: [S]tart     [Q]uit" << endl;
    cin >> command;

    // Get the string input
    while (command != 'q'){
        cout << "Enter string: ";
        string s;
        cin.ignore(numeric_limits<streamsize>::max(), '\n');
        getline (cin, s);
        cout << "The string is: " << s << endl;


        // Set up the window
        window.create(sf::VideoMode(1500, 1500), "SFML works");
        while (window.isOpen()){
            sf::Event event;

            while (window.pollEvent(event)){
                switch (event.type){
                    case sf::Event::Closed:
                        window.close();

                        break;
                }
            }
            window.clear();
            window.display();

        }
        cout << "Enter command: [C]ontinue     [Q]uit" << endl;
        cin >> command;
    }
}
...