![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Luckylad |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 27.11.2005 Где: Саратов/Россия Репутация: нет Всего: нет |
Друзья,
объясните мне пожалуйста, если можете, каким образом стандартные потоки Console.In, Console.Out, Console.Error могут быть объектами абстрактных классов TextReader и TextWriter соответственно? Ведь мы же не можем создать экземпляр абстрактного класса? Цитата из "Полный справочник по C#" Герберт Шилдт : "Чтобы создать символьный поток, поместите байтовый поток в одну из символьных потоковых C#-оболочек. В вершине иерархии символьных потоков находятся абстрактные классы TextReader и TextWriter. ...(дальше)... Поток Console.In - экземпляр класса TextReader. ...(дальше)... Потоки Console.Out и Console.Error - объекты типа TextWriter." Может я чего-то не понимаю? В чем тут дело? |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 7 Всего: 93 |
пример:
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
Посмотрев под дебагером, увидел, что Console.Out имеет тип SyncTextWriter
Получить его можно так:
Походу, это потокобезопасная обертка к TextWriter Luckylad, срочно читать про наследование и приведение типов ![]() |
|||
|
||||
Luckylad |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 27.11.2005 Где: Саратов/Россия Репутация: нет Всего: нет |
О приведенном выше приведении типов я знаю и сам ни раз использовал.
Видимо я не правильно понял Шилдта - мне подумалось, что стандартные потоки являются непосредственно созданными экземплярами класса TextReader/TextWriter, то есть
вот поэтому вопрос и возник Спасибо |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |