Предположим, у вас есть этот код:Integer разница декларация сборки
static void Send(byte[] buffer, int offset, int count)
{
while (count > 0)
{
int size = sock.Send(buffer, offset, count);
if (size == 0) throw new EndOfStreamException();
offset += size;
count -= size;
}
}
против
static void Send(byte[] buffer, int offset, int count)
{
int size;
while (count > 0)
{
size = sock.Send(buffer, offset, count);
if (size == 0) throw new EndOfStreamException();
offset += size;
count -= size;
}
}
Мой учитель сказал мне, второй будет более эффективным, но это правда?
Я провел некоторое тестирование и сравнил код сборки, и он был равен.
Но будет ли это всегда так?
- Что делать, если вместо примитивного типа вы использовали ссылочный тип? (при условии, что вы не выделяете)
- Как использовать несколько переменных?
- Будут ли различия между двумя возможностями?
Заранее благодарим за любые ответы, прошу прощения, если это было задано раньше, но я действительно не знал, как это назвать.
Получить нового учителя – Amit
Если вы протестировали, и вы нашли случаи равными, почему бы вам поверить, что говорит учитель? –
Вы проверили, что оптимизация компилятора выключена, а затем снова включена? – Grantly