Почему nameof (объект) не допускается?

В C # 6.0 вы можете написать это:

var instance = default(object);
var type = typeof(object);

Они имеют одинаковый результат:

var instance = default(System.Object);
var type = typeof(System.Object);

Но вы не можете написать это:

var name = nameof(object);

Генерирует следующую ошибку:

Неправильный термин выражения «объект».

Но вы все еще можете написать это:

var name = nameof(System.Object);

Зачемnameof(object) не компилируется?

Ответы на вопрос(1)

Ваш ответ на вопрос