Название: Многомерныq вложенный массив с использование QList Отправлено: alik от Февраль 24, 2015, 15:41 Всем добрый день, я новичок и не могу понять как решить следующую заковырьку:
Имеется базовый тип-структура TCloudData , на основе которого с помощью QList создается динамический массив TCloudData_1D. Далее на основе TCloudData_1D создается массив TSeasonContours с количеством элементов COUNT_SEASONS = 4 из структуры TSeasons. В Header файле все нормально (нет шибок компилятора), а в CPP файле я не могу понять как использовать переменную типа TSeasonContours Contours. Все вложенные поля Contours не видны. Не проходит ничего: Contours[1], Contours[1,1], Contours-> , ... Что я делаю не так ? struct TCloudData { int No; float bVxyz_km; int CountPoints; }; typedef QList<TCloudData> TCloudData_1D; enum TSeasons { wpSummer = 0, wpWinter = 1, wpSpring = 2, wpAutumn = 3, COUNT_SEASONS = 4 }; typedef TCloudData_1D TSeasonContours[COUNT_SEASONS ]; TSeasonContours Contours; Contours[]. ??? Название: Re: Многомерныq вложенный массив с использование QList Отправлено: Swa от Февраль 24, 2015, 16:31 А что сложного? Код
Код: Contours[0] Код Код: Contours[0][0] Код Код: Contours[0][0].No Название: Re: Многомерныq вложенный массив с использование QList Отправлено: alik от Февраль 24, 2015, 16:43 А что сложного? Код Код: Contours[0] Код Код: Contours[0][0] Код Код: Contours[0][0].No А почему тогда не работает вызовs типа Contours[0].clear, Contours[0].count и т.д. ??? Название: Re: Многомерныq вложенный массив с использование QList Отправлено: Igors от Февраль 24, 2015, 16:43 Все 4 массива пустые (содержат 0 элементов). Чтобы что-то увидеть нужно сначала заполнить их, напр так
Код
возвращает ... Этого термина начинающие часто не понимают (но стесняются спросить). Кто кому "возвращает"? Что он брал а потом отдает? :) .. возвращает .. Название: Re: Многомерныq вложенный массив с использование QList Отправлено: Swa от Февраль 24, 2015, 17:00 А почему тогда не работает вызовs типа Contours[0].clear, Contours[0].count и т.д. ??? Этот код работает. Вот такой пример у меня работает: Код: #include <QList> Если у вас не работает метод count, то проблема где-то в другом месте. Этого термина начинающие часто не понимают (но стесняются спросить). Кто кому "возвращает"? Что он брал а потом отдает? :) Ну это общепринятый термин. Не знаю, как по-другому выразиться.Название: Re: Многомерныq вложенный массив с использование QList Отправлено: alik от Февраль 24, 2015, 17:24 А почему тогда не работает вызовs типа Contours[0].clear, Contours[0].count и т.д. ??? Этот код работает. Вот такой пример у меня работает: Код: #include <QList> Если у вас не работает метод count, то проблема где-то в другом месте. Этого термина начинающие часто не понимают (но стесняются спросить). Кто кому "возвращает"? Что он брал а потом отдает? :) Ну это общепринятый термин. Не знаю, как по-другому выразиться.При попытке вызвать в конце программы Contours[0].clear компилятор выдает ошибку statemnet cannot resolve address of overloaded function Название: Re: Многомерныq вложенный массив с использование QList Отправлено: Old от Февраль 24, 2015, 17:32 При попытке вызвать в конце программы Вы прямо так вызываете?Contours[0].clear компилятор выдает ошибку statemnet cannot resolve address of overloaded function Скобки не забыли? Код
Название: Re: Многомерныq вложенный массив с использование QList Отправлено: alik от Февраль 24, 2015, 17:37 При попытке вызвать в конце программы Вы прямо так вызываете?Contours[0].clear компилятор выдает ошибку statemnet cannot resolve address of overloaded function Скобки не забыли? Код
Да со скобками работает clear() ! Но почему в редакторе кода после набора Contours[0] не появляется список доступных для типа TCloudData_1D переменных и методов ? |