0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
||||||||||||||||
1 | ||||||||||||||||
Приведение типов03.05.2011, 18:37. Показов 8093. Ответов 20
Метки нет (Все метки)
Есть 2 класса, экземпляр одного из них передаётся в другой по ссылке:
0
|
03.05.2011, 18:37 | |
Ответы с готовыми решениями:
20
Не требуется приведение типов при умножении типов Byte Приведение типов приведение типов Приведение типов |
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
|
||||||
03.05.2011, 18:46 | 2 | |||||
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
03.05.2011, 18:48 [ТС] | 3 |
0
|
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
|
||||||
03.05.2011, 18:53 | 4 | |||||
typeof вот пример с msdn
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
||||||
03.05.2011, 18:57 [ТС] | 5 | |||||
Ладно еще раз, тип я получил:
0
|
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
|
||||||
03.05.2011, 19:00 | 6 | |||||
если не ошибаюсь то так
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
03.05.2011, 19:02 [ТС] | 7 |
0
|
289 / 234 / 33
Регистрация: 09.02.2011
Сообщений: 435
|
|
03.05.2011, 19:04 | 8 |
объект _а приведется к типу t и вызовется метод FullName, который должен вывести полное имя
Я прогнал, задачу не понял
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
03.05.2011, 19:06 [ТС] | 9 |
Я могу получить полное имя, просто вызвав t.FullName,
а вот приведение (t)_a не работает
0
|
мастер топоров
916 / 741 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
|
||||||
03.05.2011, 20:26 | 10 | |||||
смотрим в код:
если вам нужно использовать рефлексию, а это и есть рефлексия, то могу посоветовать вам статью на эту тему
2
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
03.05.2011, 20:30 [ТС] | 11 |
Делегаты тут не помогут?
0
|
6287 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,936
|
|
03.05.2011, 20:43 | 12 |
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
||||||
03.05.2011, 21:20 [ТС] | 13 | |||||
Фигню сказал, сорри.
Вообщем я всё-таки накопал, как можно решить мою проблему: создал интерфейс и вызвал метод так:
0
|
мастер топоров
916 / 741 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
|
|
03.05.2011, 22:29 | 14 |
а откуда вы взяли интерфейс?
аналогичным способом можно было привести к известному классу и не мучиться приведите свой код пожалуйста. мне интересно
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
03.05.2011, 22:38 [ТС] | 15 |
Не получится, какого-то общего класса нет.
Получилось так: классы наследуют определенный интерфейс и потом приводятся к этому интерфейсу, я просто не знал, что так можно делать, думал что нужно привести к определенному типу. Не стоит, да и не на работе я уже. С динамических языков тяжело перейти обратно )
0
|
мастер топоров
916 / 741 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
|
||||||
03.05.2011, 23:11 | 16 | |||||
с приведением объектов к типу интерфейсов следует быть осторожным ибо когда приводится к типу интерфейса, который реализует класс, объект которого мы приводим к типу интерфейса, то этот объект будет реализировать только реализацию методов интерфейса, которые были переопределены в классе-наследнике.
например вот такой код:
0
|
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 3
|
|||||||||||||||||||||
12.05.2011, 18:48 | 17 | ||||||||||||||||||||
Ребята у меня похожая проблема:
допустим есть форма
и мы можем свободно обращатся и изменять переменную str
в С# увы такого зделать нельзя , ну и соответственно визвать метод есле таков есть (что как я понял хочет автор теми) Так вот у меня есть тoлько переменная obj типа object где находится целая форма импортированная с DLL вызвать ее получается
0
|
0 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 9
|
|
12.05.2011, 18:55 [ТС] | 18 |
Зачем ты приводишь форму к типу object?
Чтобы получить доступ к публичному методу, тебе нужно: либо привести объект к нужному типу(классу), либо к определенному интерфейсу (так поступил я)
0
|
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 3
|
|
13.05.2011, 12:20 | 19 |
Перед компиляцией нам неизвесный нужний тип или определенный интерфейс, в процессе выполнения кода у меня получается вытащить в виде стрингового параметра в какой тип нужно привести.
Но что с ним дальше делать незнаю.
0
|
мастер топоров
916 / 741 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
|
|
13.05.2011, 12:51 | 20 |
nickROMAnt, если у вас в процесса написания фактически неизвестно какой тип будет или какой интерфейс, но вы знаете его структуру (названия методов, имена полей и так далее), но нет самого класса, чтобы можно было нормально привести к нему, тогда используйте методы рефлексии
0
|
13.05.2011, 12:51 | |
13.05.2011, 12:51 | |
Помогаю со студенческими работами здесь
20
Приведение типов Приведение типов Приведение типов Приведение типов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |