Сообщение С# long to float/double от 11.04.2019 12:27
Изменено 11.04.2019 12:27 okon
С# long to float/double
Не совсем выглядит логичным почему выбирается метод с float параметром,
а также в случае если заменяем Test(double) на Test(decimal) то компилятор не может выбрать между двумя методами и ошибка компиляции.
В случае с параметром Test(double) ошибки компиляции нету.
а также в случае если заменяем Test(double) на Test(decimal) то компилятор не может выбрать между двумя методами и ошибка компиляции.
В случае с параметром Test(double) ошибки компиляции нету.
void static Test()
{
Test(1L);
}
void Test(double value)
{
Console.WriteLine($"double = {value}");
}
void Test(float value)
{
Console.WriteLine($"float = {value}");
}
void static Test()
{
Test(1L);
}
void Test(decimal value)
{
Console.WriteLine($"double = {value}");
}
void Test(float value)
{
Console.WriteLine($"float = {value}");
}
С# long to float/double
Не совсем выглядит логичным почему выбирается метод с float параметром,
а также в случае если заменяем Test(double) на Test(decimal) то компилятор не может выбрать между двумя методами и ошибка компиляции.
В случае с параметром Test(double) ошибки компиляции нету.
а также в случае если заменяем Test(double) на Test(decimal) то компилятор не может выбрать между двумя методами и ошибка компиляции.
В случае с параметром Test(double) ошибки компиляции нету.
void static Test()
{
Test(1L);
}
void static Test(double value)
{
Console.WriteLine($"double = {value}");
}
void static Test(float value)
{
Console.WriteLine($"float = {value}");
}
void static Test()
{
Test(1L);
}
void static Test(decimal value)
{
Console.WriteLine($"double = {value}");
}
void static Test(float value)
{
Console.WriteLine($"float = {value}");
}