| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Вызов перегрузки инициализации из инициализации |
| Автор: Resha 14.3.2008, 10:45 | ||
| Ситуация: Есть класс:
Т.е. необходимо вызывать функцию инициализации, как обычную функцию. Какие есть наиболее эффективные в плане уменьшения количество копипастов (вариант с созданием дублирующей функции fn_Privet(string Message, string Name) и вызова её, вместо Privet(string Message, string Name) мне не подходит - слишком большое количество перегрузок и взаимосвязь м/д ними, в итоге получится около 10 лишних функций)? Заранее спасибо |
| Автор: PashaPash 14.3.2008, 12:10 | ||
Resha,
|
| Автор: QryStaL 14.3.2008, 12:26 | ||
|
| Автор: Resha 14.3.2008, 13:25 | ||
| Вижу, что упрощение кода упростило и ответы. Предположим, что в случае public Privet(string Message) { } Мне Name надо получить из файла дефолтовых настроек. Таким образом, ситуация расширяется до
Как вызвать перегрузку инициализации с параметрами, получаемыми в другой перегрузке инициализации? |
| Автор: Dblma 14.3.2008, 13:31 |
| Вместо вызова Privet(Message, Name); использовать this(Message, Name); |
| Автор: Resha 14.3.2008, 13:54 | ||
this - Ошибка - "Ожидается имя метода" |
| Автор: vponomarov 14.3.2008, 14:20 |
| как вариант, можно сделать один (наиболее конкретный Privet(string Message, string Name)) конструктор в виде функции тогда проблем с ее вызовом не будет |
| Автор: Resha 14.3.2008, 14:50 | ||
| vponomarov, ну так в итоге и пришлось сделать Да и еще хотелось бы предоставить возможность при инициализации класса, например, новостей (News) давать возможность как вывода одной новости (за которой по сути должен идти список других новостей), так и просто списка новостей, т.е.
|