La descrizione di std::is_void
precisa che:Cosa è const void?
Fornisce il valore costante elemento che è uguale a true, se T è il tipo vuoto, vuoto const, volatile vuoto, o const vuoto volatili.
Quindi cosa potrebbe essere const void
o volatile void
?
This answer afferma che const void
tipo di ritorno sarebbe valida (invece compila il VC++ 2015)
const void foo() { }
Se dalla norma, const void
non è valida (VC essere sbagliato) - allora qual è const void
?
La risposta a cui si collega non dichiara che non sarebbe valida, afferma che sarebbe "senza significato", che direi che "non offre alcun vantaggio rispetto a" void' senza 'const'" . – hvd
@hvd, la risposta indica che il compilatore dovrebbe avvertire/errore in merito a tale qualifica. Con ciò presumo che lo standard C++ non permetta le qualifiche con 'void' – Ajay
La risposta afferma che il compilatore dovrebbe mettere in guardia su tale qualifica, non menziona un errore e un errore sarebbe sbagliato.Questa osservazione riguarda solo la qualità dell'implementazione, non la conformità, ma posso capire che ciò non è affatto chiaro dall'osservazione stessa. – hvd