| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > конструкция where |
| Автор: wwwdiz 15.6.2007, 01:34 | ||
Наткнулся на http://forum.vingrad.ru/sources/topic-154181/unread-1.html, понял практически всё за исключением ключевого слова where:
Очень хотелось бы услышать объяснения экспертов... |
| Автор: SpaceSpace 15.6.2007, 08:00 | ||||
| Этот конструкт накладывает ограничения на generic, т.е. в процессе компиляции будет проверяться соответсвует ли тот тип, который ты засунеш в <>
а также этот класс должен иметь конструктор без параметров
и так, в конечном итоге для успешного выполнения тып должен иметь конструктор без параметров, и быть производным от TForm объяснил? |
| Автор: darkness 15.6.2007, 08:42 | ||
SpaceSpace,
Скорей всего от Form, т.к.: where TForm: Form, new() |
| Автор: wwwdiz 15.6.2007, 09:08 | ||
darkness, тогда а что подобное гласит:
Что TForm, который в скобках <>, должен быть производным от Form и интерфейса IViewer, да и ещё с конструтором без параметров? (задаю подобные ламерские вопросы, потому как в литературе нигде объяснения подобного не встречал) |
| Автор: SpaceSpace 15.6.2007, 09:27 | ||||
описка, ссори Добавлено через 3 минуты и 36 секунд а если несколько типизированных параметров, то надо писать так
|
| Автор: tol05 15.6.2007, 09:32 |
| первое ограничение: тип TForm (т.е любой подставляемый тип) должен быть совместимым с Form, т.е. быть им, или его потомком второе ограничение: TForm должен быть типом, имеющим конструктор без параметров И вообще, всем, кто интересуется вопросами синтаксиса, советую почитать http://www.ecma-international.org/publications/standards/Ecma-334.htm |
| Автор: SpaceSpace 15.6.2007, 09:33 | ||
правильно мыслишь, молодец |
| Автор: wwwdiz 15.6.2007, 09:35 |
| Всё, Ребята, разъяснили!!!! Спасибо!!! |