Использование суффикса f для числовых литераловC#

Место общения программистов C#
Ответить
Anonymous
 Использование суффикса f для числовых литералов

Сообщение Anonymous »

Я вижу такой код:

Код: Выделить всё

float num2 = ( ( this.X * this.X ) + ( this.Y * this.Y ) ) + ( this.Z * this.Z );
float num = 1f / ( ( float ) Math.Sqrt ( ( double ) num2 ) );
this.X *= num;
this.Y *= num;
this.Z *= num;
А имеет ли значение, если бы это было так?:

Код: Выделить всё

float num2 = ( ( this.X * this.X ) + ( this.Y * this.Y ) ) + ( this.Z * this.Z );
float num = 1 / ( ( float ) Math.Sqrt ( ( double ) num2 ) );
this.X *= num;
this.Y *= num;
this.Z *= num;
Будет ли компилятор использовать (float)/(float) или попытается использовать (double)/(float) для второго примера для строка 2?

РЕДАКТИРОВАТЬ: Кстати, будет ли какая-нибудь разница в производительности?

Подробнее здесь: https://stackoverflow.com/questions/474 ... c-literals
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»