Jeśli nie chcemy implementować metody init w naszej klasie i mając na uwadze, że init w NSObject zwraca tylko instancję obiektu bez inicjalizacji, nie widzę punktu wywoływania init, jeśli już otrzymamy instancję z przydziałem. Próbowałem i działa, ale nie jestem pewien, czy nie spowoduje to przyszłych problemów.Czy to byłoby poprawne/ellegant używać tylko przydzielić bez init?
myClass *newObject = [myClass alloc];
zamiast:
myClass *newObject = [[myClass alloc] init];
dzięki.
Wielkie dzięki za wyjaśnienie. "Jeśli mówisz o klasie niestandardowej, która dziedziczy bezpośrednio z NSObject i nie wymaga inicjalizacji zmiennych instancji, możesz uciec z [przydziałem myClass], ale zdecydowanie nie jest to dobry styl programowania." Tak było w moim przypadku. Odpowiedź została zaakceptowana. – toupper
@toupper: Warto wspomnieć, że jeśli chcesz krótszej składni, możesz zrobić "[myClass new];" co jest równoznaczne z '[[myClass alloc] init];', ale nie można go uznać za modne . –