Уважаемые Гуру!
Перечитываю Страупструпа.
Пытаюсь честно делать все примеры. Когда-то в VC6 уже их реализовывал и точно помню, что удалалось добиться работоспособности кода. Но теперь в VS2005/2008 многие вещи из стандартных библиотек, похоже, поменялись. В частности, пример:
int main(int argc, char* argv[])
{
switch(argc) {
case 1: // считывать из стандартного входного потока
break;
case 2: // считывать из строки параметров
cin = *new istream(argv[1],strlen(argv[1]));
break;
default:
error("слишком много параметров");
return 1;
}
// дальше прежний вариант main
}
cin = *new istream(argv[1],strlen(argv[1]));
Вызывает ошибку: нет легального доступа к приватному оператору "="!
Начал копать, оказалось, что istream теперь лишь алиас сложного шаблонного класса basic_istream, описание которого в MSDN сильно упрощено.
Пожалуйста, помогите:
1)как нужно переделать пример Страупструпа?
2)как вообще создать свой аналог cin (ввод потока из консоли!) с помощью STL?
Заранее, спасибо!