Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
k-iak
0 / 0 / 0
Регистрация: 02.12.2017
Сообщений: 2
1

Исправить код с добавлением в плейлист

02.12.2017, 17:13. Просмотров 865. Ответов 2

Добрый день!
Помогите, пожалуйста, разобраться.
Задача такая: муз плеер. создать плейлисты(мьют массивы) с треками на выбор, создать мастер библиотеку(мьют массив) с со всеми треками.
В методе addSongToPlaylist добавляю в массив arrayPlaylist и в массив masterLibriary трек (s). Но в массив masterLibriary трек не добавляется. Массив masterLibriary вообще нил, когда в него начинают добавлятся треки, хотя при инициализации он не нил...
Не могу понять почему не работает следующий код (часть проекта).

Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
@interface Playlist : NSObject
@property (strong, nonatomic) NSString *masterLibName;
@property (strong, nonatomic) NSString *playlistName;
@property (strong, nonatomic) NSMutableArray *arrayPlaylist;
@property (strong, nonatomic) NSMutableArray *masterLibriary;
 
-(void) addSongToPlaylist: (Song *) s;
-(id) initPlaylistWithName: (NSString *) name;
-(id) initMasterLibriaryWithName: (NSString*) name;
@end
 
@implementation Playlist
@synthesize masterLibName, playlistName;
@synthesize arrayPlaylist, masterLibriary;
 
-(id) initMasterLibriaryWithName:(NSString *)name{
    self = [super init];
    if (self) {
        masterLibName = [NSString stringWithString: name];
        masterLibriary  = [NSMutableArray array];
    }
    return self;
}
 
-(id) initPlaylistWithName: (NSString *) name{
    self = [super init];
    if (self) {
        playlistName = [NSString stringWithString: name];
        arrayPlaylist = [NSMutableArray array];
    }
    return self;
}
 
-(instancetype) init{                                           
    return [self initPlaylistWithName:@"NOName"];
}
 
-(void) addSongToPlaylist: (Song*) s{
    [masterLibriary addObject: s];
    [arrayPlaylist addObject:s];
 
 
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Playlist * playlist1 = [[Playlist alloc] initPlaylistWithName:@"First playlist"];
        Playlist * playlist2 = [[Playlist alloc] initPlaylistWithName:@"Second playlist"];
        Playlist * playlist3 = [[Playlist alloc] initPlaylistWithName:@"Third playlist"];
        
        Playlist *masterLibCollection = [[Playlist alloc] initMasterLibriaryWithName:@"Master Libriary"];
 
        [playlist1 addSongToPlaylist:s1];
        [playlist2 addSongToPlaylist:s2]; [playlist2 addSongToPlaylist:s3];
        [playlist3 addSongToPlaylist:s4]; [playlist3 addSongToPlaylist:s5]; [playlist3 addSongToPlaylist:s6];
}
@end

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2017, 17:13
Ответы с готовыми решениями:

Модифицировать код добавлением if и else
Доброго времени cуток! Помогите модифицировать код. Требуется добавить if и else помогите это...

Скажите, пожалуйста, как исправить исправить код в процедуре
задание такое :Дан одномерный массив. Переместить нулевые элементы массива в начало, сдвинув...

Как вставить div в PHP код (в echo) - исправить код
Народ как вставить div в php код точнее в echo В этот код:<?php //отсеивание $dir = "MP3...

Код, который включает/выключает светодиоды на клавиатуре. Исправить код
Есть код, который включает/выключает светодиоды (Caps Lock, Num Lock и Scroll Lock) по нажатию...

Код не отображает картинку с камеры. Исправить код
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;...

2
Митя800
66 / 66 / 19
Регистрация: 13.07.2015
Сообщений: 219
02.12.2017, 19:01 2
Свойство masterLibriary инициализируется только в initMasterLibriaryWithName, в главном коде вызывается initPlaylistWithName, у объекта которого вызывается addSongToPlaylist, которым используется nil-объект.

Однако странная у класса Playlist обязанность, пересмотрите свой код, возможно понадобится разделить на два класса задачу.
1
k-iak
0 / 0 / 0
Регистрация: 02.12.2017
Сообщений: 2
02.12.2017, 19:34  [ТС] 3
Спасибо за ответ!
Все понял.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2017, 19:34

Нужно исправить код. Комментарии добавляются в guestbook.txt, а сам код находится в guestbook.php
Написал такой код для комментирования страницы. Однако 1 коммент отправляется пустым, вместо 2-ого...

Исправить код
Имеется код, который проверяет соединение Интернет. Option Explicit Private Declare Function...

Исправить код
#include <iostream> #include <fstream> using namespace std; int main() { int le = 0; int re...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru