Здесь довольно простой вопрос, я немного не уверен в передаче памяти в C.
Если у меня есть следующий
CGPoint* tileForCoordinates (CGPoint position, short width, short height)
{
CGPoint *tileCoordinate = (CGPoint*)malloc(sizeof(CGPoint));
tileCoordinate->xTile = (position.xPosition / width);
tileCoordinate->yTile = (position.yPosition / height);
return tileCoordinate;
}
, и я хотел бы назвать это в другом исходном файле или как-то еще Мог бы я объявить указатель и выше и вернуть его? Если да, то когда я вызываю из другого класса, например
CGPoint *currentTilePosition = tileForCoordinates(curPosition, 50, 50);
Что происходит с указателем, возвращаемым malloc? Следует его освободить или какова история? :)