Недавно я изучал внутреннее устройство структуры CancellationToken
и обнаружил немного странную конструкцию (точнее, присвоение значения this
] ключевое слово).
Код одного из его конструкторов следующий:
public CancellationToken( bool canceled )
{
this = new CancellationToken();
if ( canceled )
{
this.m_source = CancellationTokenSource.InternalGetStaticSource( canceled );
}
}
Что означает строка, в которой происходит присвоение ключевому слову this
?
Обратите внимание, что присвоение ключевому слову this
невозможно для классов - ошибка Невозможно присвоить '
.