I have created my iPhone apps but I have a problem. I have a classViewController where I have implemented my program. I must alloc 3 NSMutableArray but I don't want do it in grapich methods. There isn't a constructor like Java for my class?
// I want put it in a method like constructor java  arrayPosition = [[NSMutableArray alloc] init]; currentPositionName = [NSString stringWithFormat:@"noPosition"]; 
                Traditionally in languages like Java and C# a constructor is where you would perform your initializations. In Objective-C you would do so in the init method even though you create a convenience constructor.
A Constructor in C is used in the memory management of C++programming. It allows built-in data types like int, float and user-defined data types such as class. Constructor in Object-oriented programming initializes the variable of a user-defined data type. Constructor helps in the creation of an object.
Out of the box in Objective-C you can initialize an instance of a class by calling alloc and init on it. // Creating an instance of Party Party *party = [[Party alloc] init]; Alloc allocates memory for the instance, and init gives it's instance variables it's initial values.
Yes, there is an initializer. It's called -init, and it goes a little something like this:
- (id) init {   self = [super init];   if (self != nil) {     // initializations go here.   }   return self; }   Edit: Don't forget -dealloc, tho'.
- (void)dealloc {   // release owned objects here   [super dealloc]; // pretty important. }   As a side note, using native language in code is generally a bad move, you usually want to stick to English, particularly when asking for help online and the like.
/****************************************************************/ - (id) init  {   self = [super init];   if (self) {     // All initializations you need   }   return self; } /******************** Another Constructor ********************************************/ - (id) initWithName: (NSString*) Name {   self = [super init];   if (self) {     // All initializations, for example:     _Name = Name;   }   return self; } /*************************** Another Constructor *************************************/ - (id) initWithName:(NSString*) Name AndAge: (int) Age {   self = [super init];   if (self) {     // All initializations, for example:     _Name = Name;     _Age  =  Age;   }   return self; } 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With