Si supponga che voglio creare un alias di un tipo in C# utilizzando una sintassi ipotetica:Tecniche per l'aliasing in C#?
Currency = float;
poi vado via e creare un qualche migliaio di file che utilizzano Currency
tipo.
poi mi rendo conto che io preferisco usare tipi FCL:
Currency = System.Single;
eccellente, tutto il codice funziona ancora.
... mesi più tardi ...
Aspetta, sto ottenendo alcuni errori di arrotondamento strani. Oh ecco perché, System.Single
only has 7 digits of precision. Consente fino a 15 cifre che:
Currency = System.Double;
... anni dopo ...
Ohhhh, virgola mobile non è esatto; moltiplicando $0.0011/unit * 217,384 units
si espongono alcune limitazioni dell'utilizzo di virgola mobile. E i ragionieri sono attaccanti contro "irregolarità contabili". Nessun problema:
Currency = System.Decimal;
... anni dopo ...
applicazioni internazionali? Codici di valuta Hmmmm. Thank you CodeProject:
Currency = Money;
... poi ...
Ooo, modelli e pratiche. Specifichiamo un po 'di quel codice:
Currency = ICurrency;
E durante tutto questo codice non sciocco non si è rotto.
so che C# non supporta questo livello di encapsulation e di resilienza con la sintassi che ho inventato.
Ma qualcuno può suggerire una sintassi che può simulatewhatpeoplehavebeentryingtoaccomplish (includingmyself)?
fondamentalmente un typedef in C++/C –
presumo si sa conosce "utilizzando alias" ...? –
Uso "digita alias" ("usando alias") per rendere il codice più semplice da seguire in modo coerente ... tuttavia, sembra un cambiamento di rottura. Le regole (e la firma) relative al tipo in uso sono state modificate. –