C#当func被多次调用时,如何调用子函数一次
从一些例子开始:C#当func被多次调用时,如何调用子函数一次,c#,func,C#,Func,从一些例子开始: public abstract class T { void subfunc() { /*code*/ } void func() subfunc(); //code } 当我多次调用main方法T.func()时,我需要只在第一次调用func()时才调用subfunc()。我真的不想在main方法中调用它,因为它在逻辑上不引用它。在func中传递一个参数,该参数说明是否需要调用subFunc callSubFunc = true; func(callSubF
public abstract class T
{
void subfunc() { /*code*/ }
void func()
subfunc();
//code
}
当我多次调用main方法T.func()时,我需要只在第一次调用func()时才调用subfunc()。我真的不想在main方法中调用它,因为它在逻辑上不引用它。在func中传递一个参数,该参数说明是否需要调用subFunc
callSubFunc = true;
func(callSubFunc);
callSubFunc = false;
//further calls of func(callSubFunc) will pass false everytime
并对func进行如下修改:-
void func(bool shouldCallSubFunc)
{
if(shouldCallSubFunc)
subFunc()
}
希望这有助于保留一个标志,以检查subfunc()是否已被调用一次。例如,如果(isFirstTime){subfunc();isFirstTime=false;}或者如果您需要获取某种类型的值。。。