2013-02-14 19 views

risposta

12
var a = 0U; // a is unsigned int 

Uguale

var a = (uint)0; // a is unsigned int 

check this

3

Proprio come 0L definisce 0 come una lunga, 0U definisce 0 come int unsigned (uint).

+1

Usa 0L invece. È più difficile confondere con 01. –

+0

@EricLippert buon punto, corretto. –

6

Significa la stessa cosa di ((uint)0).

+0

Mi interessa davvero questo: c'è qualche svantaggio (in teoria) nel cast esplicito di un letterale come nel tuo esempio, rispetto a dichiararlo usando un suffisso di tipo? Suppongo che il compilatore compili comunque lo stesso risultato, ma .... – baldric