C# Float vs. VB.net Single - Namin' complainin'
BPAndrew's question seems to be really "why float in C# and Single in VB.NET", which noone actually answered, so here's my 2p...
The use of "float" in C# seems to be a throwback to its C/C++ heritage. "float" still maps to the System.Single type in C#, so the keyword just exists for convenience. You could just as well declare the variable as "Single" in C# the same as you do in VB.NET.
(And as stated above, naming them Single/Double actually makes more sense as they are single/double precision floating-point numbers.)
As others have said, they map to "single" and "double" precision binary floating point types. Personally I think it was a sideways step to just name System.Single
and System.Double
- why not System.Float32
and System.Float64
to match the integer types?
The reason is that both single and double are both Floating Point numbers.
single is short for Single Precision Floating Point Number (32 bits)
double is short for Double Precision Floating Point Number (64 bits)
Therefore to call a floating point number float is ambiguous.
http://en.wikipedia.org/wiki/Single_precision
http://en.wikipedia.org/wiki/Double_precision