Проблемы При Освоении C++ По Книге Страуструпа

tumanovalex

Active member
17.06.2009
26
0
#1
Visual Studio 2010, Windows 7. Начал осваивать C++ по книге Страуструпа "Программирование: принципы и практика использования C++". Взял для начала пример на стр. 94.
Проект содержит заголовочный файл
C++:
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
#include <locale.h>
using namespace std;
inline void keep_window_open() {char ch; cin >> ch;}
и файл CPP
C++:
#include "std_lib_facilities.h"
int main()
{
setlocale(LC_ALL, "Russian");
cout << "Hello, World!\n";
cout << "Введите ваше имя, затем нажмите 'Enter':  ";
string name;
cin >> name;
cout << "\nHello, " << name << "\n";
keep_window_open();
return 0;
}
Сразу же наткнулся на проблемы:
1. При выводе имени, набранного русскими буквами, выводятся на экран кракозябры.
2. Функция keep_window_open не обеспечивает ожидание ввода символа. Окно не закрывается при нажатии Enter или любой другой клавиши. Закрытие окна происходит только при вводе нескольких символов и нажатии клавиши Enter.
Подскажите, пожалуйста, как решить эти проблемы. Проект прилагаю.
 

Вложения