|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
|||||||||||
Когда нажимаю добавить элемент, и уже его ввожу, то вылетает ошибка и закрываеться программа27.09.2012, 21:17. Показов 1917. Ответов 17
Метки нет (Все метки)
Есть такая программулька:
Когда нажимаю добавить элемент, и уже его ввожу, то вылетает ошибка и закрываеться программа, через отладчик прогонял он мне сказал "попытка получить доступ к неразрешённому объекту" что-то типо того.... Перед тем как вынести добавление в отдельную функцию, я это в самом свитч реализовывал циклически, и всё работало нормально. Но когда решил выпендриться то появились проблемы).... Помогите пожалуйста. И просьба объяснить то место где я допустил ошибку подробнее. Спасибо!
0
|
|||||||||||
| 27.09.2012, 21:17 | |
|
Ответы с готовыми решениями:
17
Ввожу текст в textarea, нажимаю Enter дальше пишу нажимаю Submit... Вылетает, когда ввожу последний символ
|
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 21:44 | |
|
Set *sets[4]; - этой строкой вы что хотели сделать?
static int k = 1; - почему статик? зачем это вам? if (k < 5) - а если 4? у вас не вылетает при таком числе? int &setNumber - зачем ссылку передаете? P.S. вопросы могут не относиться к дефекту)
0
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
||
| 27.09.2012, 22:03 [ТС] | ||
|
ссылку передаю потому что не вижу смысла передавать копию.....память тратить зря не надо... а сама причина, это для того что бы определённому множеству элементы вводились, это переменная отвечает за номер множества для которого будет вызываться метод add
0
|
||
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|||
| 27.09.2012, 22:14 | |||
|
В с/с++ нумерация с нуля идет. Да, у вас не вылетает. Вы просто память портите.
Измените 73 строку на sets->add(elem); Добавлено через 47 секунд
1
|
|||
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
||
| 27.09.2012, 22:22 [ТС] | ||
|
статик сделал случайно....точнее копировал из предыдущей копии программы, а там нужно было так сделать...спасибо. 73 строка у меня кстати while (cin.get() != '\n'); если вы умели ввиду 72: сделал как вы сказали, теперь нормально, но куда теперь передаёться элемент? ведь теперь sets не знает в какое множество элемент пихать\
0
|
||
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 22:29 | |
|
Странно. У меня это прекрасно работает. VS2010.
А если так - (*sets).add(elem); Номер строки называл исходя из того кода, который вы выложили. Там ее номер был 73.
0
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
|
| 27.09.2012, 22:29 [ТС] | |
|
Всё, догнал)
Не по теме: лашара\\\\\
0
|
|
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
||||||
| 27.09.2012, 22:29 | ||||||
|
У вас со скобками в этом месте что?
0
|
||||||
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 22:32 | |
|
alsav22, закрывающая скобка там дальше вроде. Во всяком случае ошибок компиляции нет.
0
|
|
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
| 27.09.2012, 22:36 | |
|
Удалил. Не разобрлся.
0
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
||
| 27.09.2012, 22:39 [ТС] | ||
|
Не по теме: тупанул:) Не по теме: и всё это лежит в яйце....вот она жизнь кащея...
0
|
||
|
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
| 27.09.2012, 22:48 | |
|
Это я поспешил, не разобрался.
0
|
|
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 22:55 | |
|
Elfenlide, вам бы не мешало разнести реализацию и описание по разным файлам.
using namespace std; - это лучше в хедерах не писать. Иначе при подключении такого хедера, это будет распространяться на весь код. exit(1); - это тоже иногда не рекомендуют писать. Правда в вашем случае будет все ок. В любом случае, return сделает то же самое - тоже выйдет из программы
0
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
||
| 27.09.2012, 23:13 [ТС] | ||
|
Скажите а почему многие я заметил пишут всегда std:: и почему не стоит писать using namespace std; ? это где-то потом может помешать? вместо exit(1) просто писать return 0; break; ? почему лучше не писать exit ? Не по теме: я просто ещё совсем новичёк\
0
|
||
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 23:22 | |
|
Про exit можно почитать тут - Прервать работу програмы
using namespace std; не стоит писать только в .h файлах. В .cpp можно. Некоторые пишут std:: просто потому, что так привыкли
0
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
|||||||
| 27.09.2012, 23:25 [ТС] | |||||||
|
Может ещё подскажете: что делать с выводом...вообщем я закоментил весь свитч на время чтобы остался кусок и дописал коеч-то:
у меня там был перегружен оператор << для вывода. Если сделать Set sets[4], то это работает,правдо надо заменить "->" на "." А вот с указателями не хочет..желательно с пояснением...спасибо
0
|
|||||||
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 27.09.2012, 23:45 | |
|
Elfenlide, вы опять путаетесь в указателях.
cout<<*sets[0]; Если подробнее: Set* sets[4] равносильно (ну почти) Set** sets. Т.е. это некий двумерный массив. Матрица, если хотите. следовательно sets[0] - это указатель на строку (или столбец, как больше нравится) этой матрицы. Естественно если попытаться вывести на экран эту строку, то выведется просто адрес. Чтобы вывести элемент надо разыменовать указатель Я бы посоветовал побольше почитать про указатели. В чем разница между указателем и объектом и тд.
1
|
|
|
23 / 23 / 11
Регистрация: 15.04.2012
Сообщений: 183
|
||
| 27.09.2012, 23:54 [ТС] | ||
|
0
|
||
| 27.09.2012, 23:54 | |
|
Помогаю со студенческими работами здесь
18
Когда нажимаю на кнопку, программа отключается...
вроде программа работает, но когда ввожу значения ListBox выдает null когда нажимаю в "молоко" (Не в элемент "молоко", а просто в пустоту) и из-за этого ошибка Когда я ввожу номер теста у меня ошибка file not found Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|