Прости меня за абсолютно отвратительный заголовок моего вопроса, но я имею в виду: есть класс A , который имеет метод, который Code> Code> Code> Code> Code>, который вызывает метод mb. B , тогда этот метод (
Код: Выделить всё
mB
в коде:
class A
{
B b;
void mA()
{
b.mB();
}
}
class B
{
public void mB()
{
mC();
}
D d;
void mC()
{
d.mD();
}
}
class C
{
public virtual void mD() { }
}
class D : C
{
public override void mD()
{
A a = // Somehow get the A object that executed this
}
}
Теперь, когда вы знаете очень запутанную ситуацию, не могли бы вы рассказать мне, как я бы получил объект A от md ? (Я имею в виду объект, а не класс)
(и для вас, Mr. Неправильно дубликация, я имею в виду object < /em>, а не метод)
(просто чтобы быть уверенным: объект означает экземпляр класса, а не функция, содержащаяся в классе, а тем более только имя этой функции) < /p>
, что я убил, что я убиваю, я. существующая программа, и не может редактировать ни один из классов (кроме D ). Таким образом, это должно быть решено каким -то другим способом, я предполагаю, что через некоторые рефлексии махинации, с которыми я в порядке. Я просто снова наткнулся на этот вопрос и стал любопытным относительно того, на самом деле это даже возможно,
Я знаю, что StackTrace содержит информацию о предыдущих вызовах методов, но я не могу найти какого -либо показания фактического объекта, связанного с ними в определении стекафрама
Я не могу, но если я хочу знать, что я хочу, чтобы я хотел знать. /> Заранее спасибо. < /p>
Подробнее здесь: https://stackoverflow.com/questions/733 ... -to-the-cu