我有一個返回由CGColorCreate方法創建CGColorRef實例的方法。我需要從這個方法autorelease顏色返回。有誰知道如何做到這一點?如何自動釋放CGColorRef
//red,green,blue are from 0-255 range
+(CGColorRef) getColorFromRed:(int)red Green:(int)green Blue:(int)blue Alpha:(int)alpha
{
CGFloat r = (CGFloat) red/255.0;
CGFloat g = (CGFloat) green/255.0;
CGFloat b = (CGFloat) blue/255.0;
CGFloat a = (CGFloat) alpha/255.0;
CGFloat components[4] = {r,g,b,a};
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGColorRef color = CGColorCreate(colorSpace, components);
CGColorSpaceRelease(colorSpace);
//CGColorRelease(color);
// I need to auto release the color before returning from this.
return color;
}
迂腐:如果它需要待填寫的指針作爲一個參數應該只名稱以'GET'的方法。這裏一個更好的名字是'+(CGColorRef)CGColorWithRed:(INT)紅綠:(INT)藍綠色:(INT)藍阿爾法:(INT)alpha'(以下的'NSColor' /'UIColor'方法鉛)。 – Wevah 2010-08-17 12:26:35