Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
4 / 4 / 0
Регистрация: 17.09.2012
Сообщений: 47
1

Как запомнить сигнатуры методов?

25.02.2013, 16:12. Показов 2410. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
подскажите. не могу разобраться. есть массив int типу myArray.
столкнулся с такой проблемой и думаю весь МСДН имеет такие нюансы, но как их преобразовать в знания не могу понять ...Вот:

чтобы создать клон массива используем метод Clone

чтобы найти среднее значение елементов массива используем метод Average

int temp=myArray.Average() - возвращает сред. значение

int[] myArray2 = (int[])myArray.Clone(); - создает новый массив.

в обоих случаях используем методы, но сигнатуры совсем разные было бы проще везде использовать одну сигнатуру, но в связи с чем - то они разные. а если в еще какой то метод будет использовать 3-ю...10-ю сигнатуру записи, то как их все запомнить? или постоянно пользоваться МСДН?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.02.2013, 16:12
Ответы с готовыми решениями:

Как добавлять в список методы разной сигнатуры?
Нужно запомнить все выполненные методы в список, и потом выборочно их выполнять. Вот мой...

Как сделать сканер вирусов, используя сигнатуры
Как сделать сканер, антивирус вирусов и сигнатуры! Пример сканера как: ESET Nod32 и ESET SMART...

Объяснить такие понятия как делегаты, сигнатуры, интерфейсы, ковариантность, контравариантность
Всем доброго времени суток!!!! Не могли бы вы ясно объяснить такие понятия как делегаты,...

Как заполнить поле сигнатуры (цифровая подпись) или получить XML-запрос?
Тема значит следующая. Есть некий сервис, расположенный где-то на просторах всемирной паутины. Для...

10
6048 / 3457 / 335
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
25.02.2013, 16:29 2
Цитата Сообщение от grazyboj Посмотреть сообщение
как их все запомнить? или постоянно пользоваться МСДН?
grazyboj, а IntelliSense тебе зачем?
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
25.02.2013, 17:13 3
Цитата Сообщение от grazyboj Посмотреть сообщение
в обоих случаях используем методы, но сигнатуры совсем разные было бы проще везде использовать одну сигнатуру
Одна сигнатура = один метод.
Вы хотите и клонировать, и находить среднее арифметическое, используя один и тот же метод?
0
4 / 4 / 0
Регистрация: 17.09.2012
Сообщений: 47
25.02.2013, 17:53  [ТС] 4
Цитата Сообщение от kolorotur Посмотреть сообщение
Одна сигнатура = один метод.
Вы хотите и клонировать, и находить среднее арифметическое, используя один и тот же метод?
спасибо. кажется уже разобрался. не мог понять почему в втором методе (клонирование) стоит приведение к типу (int[]) и не правильно понял этот метод. разобравшись понял, что метод Clone возвращает тип Object, и его нужно привести к массиву. хотя не совсем понимаю почему метод "Клон" сам не приводит к типу "Аррей".
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
25.02.2013, 18:01 5
Цитата Сообщение от grazyboj Посмотреть сообщение
не совсем понимаю почему метод "Клон" сам не приводит к типу "Аррей".
Потому что класс Array реализует интерфейс ICloneable, содержащий такой метод:
C#
1
object Clone();
0
773 / 553 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
25.02.2013, 18:31 6
grazyboj, ваши идеи воплощены в таких языках как например php ,там что угодно можно присваивать чему угодна .
0
311 / 309 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
25.02.2013, 18:32 7
Вот как раз подобные методы, возвращающие object и предназначены для того, чтоб не делать много сигнатур для, скажем, клонирования объектов различных типов. Вы можете вызывать метод Clone и для массивов, и для других типов.
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
25.02.2013, 19:05 8
Цитата Сообщение от kontuPauk Посмотреть сообщение
методы, возвращающие object и предназначены для того, чтоб не делать много сигнатур
Начиная со второй версии фреймворка, для этой цели лучше подходят обобщенные классы/интерфейсы.

Это одна из причин, по которой сам МС не рекомендует использовать интерфейс ICloneable.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
25.02.2013, 20:02 9
kolorotur, ну так почему они не перепишут интерфейс в ICloneable<T>, как они сделали обобщенный IComparable? Лень-матушка?
0
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
25.02.2013, 20:31 10
Цитата Сообщение от Psilon Посмотреть сообщение
ну так почему они не перепишут интерфейс в ICloneable<T>
Потому что отсутствие явной типизации — одна из причин, по которой не рекомендуется использовать этот интерфейс.
Даже после устранения этой причины путем внедрения обощенного интерфейса, остаются другие, устранить которые не так просто, если вообще возможно при нынешней архитектуре фреймворка.

Цитата Сообщение от Psilon Посмотреть сообщение
Лень-матушка?

Внедрение серьезных изменений требует серьезных же затрат.
Видать, в МС считают, что внедрение нормального механизма клонирования не окупит себестоимость.
1
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
25.02.2013, 21:00 11
kolorotur, ну да, как я мог забыть
0
25.02.2013, 21:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2013, 21:00
Помогаю со студенческими работами здесь

Как программно получить список методов класса, параметров этих методов и типов этих параметров?
можно для паблишед методов и свойств кстати. Суть в том, что делфи при вводе точки после имени...

Как запомнить переменную?
Смысл сценария в том, что пользователь должен ввести то же слово, что и вверху. Но после нажатия...

Как запомнить переменную
Смысл сценария в том, что пользователь должен ввести то же слово, что и вверху. Но после нажатия...

Как запомнить строку....
подскажите,пожалуйста,как запомнить строку в массиве,где расположен минимальный элемент???


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru