Тема: Чому приведення вказівника до іншого типу не повертає lvalue?
Чому приведення на кшталт такого не повертають lvalue?
ID3D12GraphicsCommandList* list;
(ID3D12CommandList*)list; // не lvalue отже я не можу використати &
Тільки не кажіть, що тому що стандарт забороняє. Чому він забороняє тоді?
----
Я тут виявив, що стандарт не гарантує, що всі вказівники мають однаковий розмір, але не певен, що це причина.
----
За запитом пана koala:
ID3D12GraphicsCommandList* list;
&(ID3D12CommandList*)list;
мене цікавить чому саме це не є lvalue. Яка рація?