KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
|||||||||||
1 | |||||||||||
Эксперты обобщенного программирования25.08.2013, 21:37. Показов 3293. Ответов 40
Метки нет (Все метки)
Прошу подсказать в чем тут ошибка ?
Вот часть когда куда указывают ошибки:
Ошибка 38 error C2039: --: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 251 1 ArrayList Ошибка 48 error C2039: (): не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 256 1 ArrayList Ошибка 34 error C2039: ++: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 246 1 ArrayList Ошибка 24 error C2039: hasNext: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 241 1 ArrayList Вот полный код программы : (Проблема в самом конце)
ПЫСЫ Класс ArrayList отлажен, нужно отладить только класс Itreator ... Вроде правильно я реализовал шаблон Iterator??
0
|
25.08.2013, 21:37 | |
Ответы с готовыми решениями:
40
По ходу вирусняк. Эксперты помогайте! Эксперты Pascal 'я, что не так? Эксперты, просьба оценить сборку Нужны эксперты в проверке кода |
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
||||||
25.08.2013, 21:58 [ТС] | 3 | |||||
это все java... А как правильно? Думаю теперь нужно просто объявить как
template <T> class Iterator{};... Но как быть с передачей ссылки в кон-ре ? Добавлено через 2 минуты Точней как мне сделать класс Iterator другом ArrayList? friend class Iterator<T> ; ??? Добавлено через 6 минут
0
|
25.08.2013, 22:12 | 4 |
Ошибок так много, что даже не знаю с чего начать. И кода слишком много, поэтому сложно расказать сразу про все ошибки. Лучше делать так - писать маленький пример кода (строк 10 - 20) воспроизводящий одну из ошибок и выкладывать его. Тогда быстрей помогут.
2
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
||||||||||||||||
25.08.2013, 22:56 [ТС] | 5 | |||||||||||||||
Ошибки: Ошибка 38 error C2039: --: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 251 1 ArrayList Ошибка 48 error C2039: (): не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 256 1 ArrayList Ошибка 34 error C2039: ++: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 246 1 ArrayList Ошибка 24 error C2039: hasNext: не является членом "`global namespace'" d:\vc c++ temp\arraylist\arraylist\arraylist.h 241 1 ArrayList Добавлено через 1 минуту << class T> эту ошибку исправил что ещё нетак ... Вроде читаю книгу все правильно... Добавлено через 2 минуты Вот отдельные куски кода: ТУт ошибки:
Походу некто не знает в чем ошибка...
0
|
Комп_Оратор)
|
||||||
25.08.2013, 23:34 | 6 | |||||
Пока некто молчит, я похулиганю. Это компилируется:
А вообще, тут бы надо бы в раздел повыше.
1
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
|
25.08.2013, 23:45 [ТС] | 7 |
#!@!$! #!#$! !#!$!$! ###!@! Я уже всю книгу облазил б****** спасибо большое.. ща проверю...
0
|
Jupiter
|
25.08.2013, 23:49
#8
|
0
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
|
26.08.2013, 00:00 [ТС] | 9 |
В книгах по Java
Облазил я всю книгу после этого template < class <ArrayList<T>> Добавлено через 2 минуты Все ровно не пойму почему тут нету типизации? То есть почему мы не передаем вот этим объявления T? Ведь мы должны вернуть не какой то там итератор , итератор который проходит по ArrayList<T>, а не ArrayList и возвращать должен вроде как Iterator<T> И почему нету указание что Iterator друг?Если Мне нужно обращаться в закрытым элементам как я к ним обращусь?
0
|
Комп_Оратор)
|
|
26.08.2013, 00:05 | 10 |
Дык в опережающем объявлении он и объявлен как обобщенный. То есть в классе же ненужно аргументы шаблонов указывать (иначе перекроете общие аргументы в объявлении класса). Теперь в классе этот итератор и виден как:
Iterator_Arlst<T> а пишется Iterator_Arlst за пределами: Iterator_Arlst<T> Синтаксис... Враг не пройдет! Не по теме: Впрочем я могу тут и наговорить Вам. Интересно, что скажут люди, работающие с определением шаблонов плотно.:)
0
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
||||||||||||||||
26.08.2013, 00:16 [ТС] | 11 | |||||||||||||||
Все ровно мне не понятно почему Iterator не объявлен как friend ...
Но вот тут ещё одна проблема:
Вот полное объявление:
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
||||||
26.08.2013, 03:13 | 12 | |||||
Кликните здесь для просмотра всего текста
2
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
|||||||||||
26.08.2013, 13:50 [ТС] | 13 | ||||||||||
А фриендом Iterator нужно объявлять ? Например если мне нужно что бы он получать доступ к private полям.
Добавлено через 14 минут Теперь ошибка с получение итератора: Ошибка в этом методе:
Ошибка 5 error C2244: ArrayList<T>::iterator: не удается сопоставить определение функции существующему объявлению d:\vc c++ temp\arraylist\arraylist\arraylist.h 219 1 ArrayList Ошибка 4 error C2955: IteratorR: для использования класса шаблон требуется список аргументов шаблон d:\vc c++ temp\arraylist\arraylist\arraylist.h 216 1 ArrayList Добавлено через 52 секунды Обе ссылаются на этот метод... Что не так не пойму. Добавлено через 51 секунду Вот Определение:
0
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
||||||
26.08.2013, 14:30 | 15 | |||||
Нет такого конструктора. Есть
нужен
1
|
KeM6Pug}I{a
49 / 49 / 1
Регистрация: 23.08.2013
Сообщений: 202
|
||||||
26.08.2013, 14:52 [ТС] | 16 | |||||
Где вы у меня такой кон-ор увидели ?
Добавлено через 1 минуту А все понял...спасибо
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||||||
26.08.2013, 15:24 | 17 | ||||||||||
Можно. Только для этого T
2
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
||||||
26.08.2013, 15:38 | 18 | |||||
В студии вот такой код не компилируется:
Или B нужно предварительно объявить как шаблон?
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
26.08.2013, 15:45 | 19 |
alsav22, Второе.
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
26.08.2013, 16:38 | 20 |
0
|
26.08.2013, 16:38 | |
26.08.2013, 16:38 | |
Помогаю со студенческими работами здесь
20
Эксперты, где ошибка в TCP - пакете? Access 2000, Запрос, Помогите ув. Эксперты!!! Синий экран смерти Приглашаются эксперты Эксперты сишки, для вас интересная задачка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |