W wielu plikach C # zapisuję tagi regionów (?) O nazwie CTOR lub ctor. Jakie jest znaczenie ctor? Dlaczego taki region nazywa się ctor?
W wielu plikach C # zapisuję tagi regionów (?) O nazwie CTOR lub ctor. Jakie jest znaczenie ctor? Dlaczego taki region nazywa się ctor?
Odpowiedzi:
Jest to tylko skrót od „konstruktora” - i tak też nazywa się konstruktor w IL. Na przykład otwórz Odbłyśnik i spójrz na typ, a zobaczysz członków wezwanych .ctordo różnych konstruktorów.
Zazwyczaj ten region powinien zawierać konstruktory klasy
Aby rozszerzyć nieco więcej, istnieją dwa rodzaje konstruktorów: inicjatory instancji (.ctor), inicjatory typu (.cctor). Zbuduj poniższy kod i poznaj kod IL w ildasm.exe. Zauważysz, że pole statyczne „b” zostanie zainicjowane przez .cctor (), podczas gdy pole instancji zostanie zainicjowane przez .ctor ()
internal sealed class CtorExplorer
{
protected int a = 0;
protected static int b = 0;
}
Wpisz „ctor” i naciśnij dwukrotnie klawisz TAB, aby automatycznie dodać domyślnego konstruktora