2010-10-20 1 views
0

У меня есть этот код в одном из моих проектов (часть контура):О целых и управлении памятью в Objective-C

newPath = [tileMap updatePathFromNode:point1 toNode:point2]; 
int x,y; 
x = [[newPath objectAtIndex:0] nodeX]; 
y = [[newPath objectAtIndex:0] nodeY]; 
currFiend.motionTarget = ccp(x*20,y*20); 

Я сейчас ищу области вокруг всего моего проект, чтобы оптимизировать код. Мне любопытно, изменит ли приведенный выше код на следующее влияние любой производительности? Я знаю, что изменение может быть минимальным, даже незначительным, то, что я хочу знать, - это действительно имеет значение, чтобы не инициализировать и не назначать x, y.

newPath = [tileMap updatePathFromNode:point1 toNode:point2]; 
currFiend.motionTarget = ccp([[newPath objectAtIndex:0] nodeX]*20,[[newPath objectAtIndex:0] nodeY]*20); 

Будет ли это иметь какое-либо значение? Выделяете ли вы временные выходы? Сохранить память?

Его более трудный для чтения, чем первый фрагмент, однако в этих методах им после исполнения, а не для чтения кода.

ответ

1

Не беспокойтесь - это была бы микро-оптимизация. Компилятор должен быть достаточно умным, чтобы справляться с такими случаями. Это отличный пример для удобочитаемости.

+0

Имеет смысл. Я забыл, что в наши дни компиляторы довольно умны. Большое спасибо за ваше время! –

Смежные вопросы