1. Objective C / Говнокод #13053

    −80

    1. 1
    2. 2
    self.data = [[NSMutableData alloc] initWithLength:0];
    [data release];

    Indian code.
    So deep.

    Запостил: ivandjeferov, 26 Мая 2013

    Комментарии (16) RSS

    • >MutableData
      Мутанты, которые рожают мутанто-дата.
      Ответить
    • Что есть просто data в данном контексте?
      Ответить
      • Что бы там ни было, после этой операции в указателе окажется мусор.
        Хм, а вообще хотя да, если тут сеттер
        @property(retain)
        то тогда не окажется, окажется валидный указатель.
        Ответить
        • Только не очень понятно, чем их не устроил [NSMutableData data]
          Ответить
    • Если сеттер .data объявлен как
      @property(retain) NSMutableData *data;
      то все норм в этом коде! Обращение через сеттер self.data увеличивает счетчик ссылок, а [data release] убирает лишнюю без вызова сеттера. Аналогичный код:
      self.data = [[[NSMutableData alloc] initWithLength:0] autorelease];

      либо:
      self.data = [NSMutableData dataWithLength:0];
      Ответить
      • [NSMutableData data]
        Ваш К.О.
        Ответить
        • Молодец!! Показать хотел я, что в топике рабочий код, без утечек и крэша и хохотать там особо не над чем. Тем более никто здесь не знает, что кроется внутри сеттера.
          Ответить
          • Объявляю тебя почётным слоупоком!
            Ответить
            • иди гимнастикой займись умник
              Ответить
              • Ну если читать комментарии перед ответом не модно, то... ;)
                Ответить
    • А для чего индусу вообще нужен был этот класс? У НСдата мягковоговоря нетривиальное применение всегда.
      Ответить
    • Напишите, пожалуйста, что вам не нравится в этом коде?
      Почему всегда народ постит сюда код и не поясняет почему этот код - говнокод.
      Не все так прокачены. А так хоть можно будет понять ошибку и не совершать её.
      Ответить
    • "Боится щекотки!" - мужчина улыбнулся, вспомнив, как парень верещал в ванной, когда он тёр ему пятки мочалкой.
      Ответить

    Добавить комментарий