Получение в переменную string текст с пробелами с++

Консольное приложение на c++, надо поместить в переменную string строку с пробелами, которую введёт пользователь. Попробовал множество методов, включая getline, всё четно, если кто знает альтернативные способы - поделитесь пожалуйста.

Код изначальный:

        cout << "You choise SW-043, input your text: ";
        string textUser;
        cin >> textUser;
        cout << encrypt_SW043(textUser);

Код с методом get:

        #include <string> // объявлена в другом файле
        ...
        cout << "You choise SW-043, input your text: ";
        string textUser;
        (cin >> textUser).get();
        cout << encrypt_SW043(textUser);   
        ... 

Если использую этот способ, то в переменную заносится только 1-е слово, дальше после пробела он не читает.

Код с методом getline:

        #include <string> // объявлена в другом файле
        ...
        cout << "You choise SW-043, input your text: ";
        string textUser;
        getline(cin, textUser);
        cout << encrypt_SW043(textUser); 
        ...

Этот метод, как и дургие getline он просто игнорирует, не записывая текст в переменную.


Ответы (1 шт):

Автор решения: DerMeister
#include <iostream>
#include <string>

int main() {
    std::string input;

    std::cout << "Введите текст: ";
    std::getline(std::cin, input);  // Считывание строки с пробелами

    std::cout << "Вы ввели: " << input << std::endl;

    return 0;
}
→ Ссылка