Ошибка компилятора
Ключевое слово "this" недоступно в текущем контексте
delegate void CallBack(int i);
class A
{
public A(CallBack cb) { }
}
class B : A
{
public B() : base(new CallBack(this.f)){}
private void f(int i) { }
}
Почему эта ошибка?
В качестве решения я подумал о предоставлении защищенного без параметров ctor в A () и иметь
class B : A
{
public B() : base() // inherit the new A() ctor
{
base.cb = new CallBack(this.f); //this is allowed here
}
//...
}