|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
||||||||||||||||
Доступ к пользовательскому класу по void указателю15.10.2016, 15:37. Показов 2667. Ответов 44
Метки нет (Все метки)
Здравствуйте, есть указатель
Пусть в данном случае это пользовательский тип, то есть есть это объект класса Button. Мне необходимо чтобы некоторая функция возвращала указатель как указатель на Button Как я только не пытался....
Я понимаю что тут надо что-то типо конструктора делать, но как?
0
|
||||||||||||||||
| 15.10.2016, 15:37 | |
|
Ответы с готовыми решениями:
44
Массив по указателю void*
Преобразование указателя void к указателю на структуру |
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
|||||||
| 15.10.2016, 16:02 [ТС] | |||||||
Подчеркивает красным pointer. void не принимает?
0
|
|||||||
|
Любитель чаепитий
|
||
| 15.10.2016, 16:07 | ||
Сообщение было отмечено koker007 как решение
Решениеstatic_cast. И да, but_time должен быть указателем, чтобы присвоить ему указатель.
1
|
||
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|
| 15.10.2016, 16:10 | |
|
koker007, здесь нужен static_cast.
Добавлено через 2 минуты В целом, зачем тут void * вообще?Если у тебя тип всегда один там лежит, то проще сразу хранить Button *.Без веских причин лучше не отказываться от контроля системы типов.
1
|
|
|
Комп_Оратор)
|
||
| 15.10.2016, 16:20 | ||
0
|
||
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
||||||
| 15.10.2016, 16:42 [ТС] | ||||||
|
В общем он сейчас явно принимает указатель и вроде ничего против этого не имеет, хорошо...
Но теперь пишет что: Ошибка C2065 Button: необъявленный идентификатор 308 Ошибка C2065 Button_time: необъявленный идентификатор 308 Ошибка C2061 синтаксическая ошибка: идентификатор "Button" 308 Ошибка C2065 Button_time: необъявленный идентификатор 309
Ведь я сам лично класс прописывал. А когда начинаю писать Bu он сам мне предлагает вставить Button. Как он может говорить что он не объявлен?
0
|
||||||
|
Комп_Оратор)
|
||
| 15.10.2016, 16:45 | ||
|
...или объявление слилось с предыдущей строкой (точки с запятой не хватило) или... покажите код.
0
|
||
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
||||||||||||
| 15.10.2016, 16:51 [ТС] | ||||||||||||
0
|
||||||||||||
|
Комп_Оратор)
|
||
| 15.10.2016, 16:58 | ||
3
|
||
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
|||||||
| 15.10.2016, 16:59 [ТС] | |||||||
|
Ну предположу что надо класс Button. К слову это все в одном файле прописано. Так что они вроде как должны ведь друг друга видеть?
0
|
|||||||
|
Комп_Оратор)
|
|||
| 15.10.2016, 17:07 | |||
|
Место вызова побольше (до того места где компилируется если заремить) и полную тираду от компилятора бы ещё. ![]() Добавлено через 3 минуты
1
|
|||
|
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
|
|
| 15.10.2016, 17:08 | |
|
2
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|||||||||
| 15.10.2016, 17:40 | |||||||||
![]() Объект кнопки ведь изначально через new создавался? Тогда почему нет delete? Сейчас тут память у тебя течет; и деструктор явно вызывать надо только в достаточно специфических случаях, да и у деструктора скобки потерял ![]() Добавлено через 8 минут koker007, Кликните здесь для просмотра всего текста
3
|
|||||||||
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
||||||||||||||||||||||||
| 15.10.2016, 17:41 [ТС] | ||||||||||||||||||||||||
|
В общем все выполняется в таком порядке Из класса меню вызывается удаление:
Число это, это точка начала отсчета, для того чтобы можно было узнать местонахождение указателя искомого объекта. Когда там ключевое слово совпадает с ключевым словом у указателя, это значит, указатель именно тот который ищется.
Ошибки остаются.
0
|
||||||||||||||||||||||||
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|||||||
| 15.10.2016, 17:54 | |||||||
|
Хоть я и не из тех, кто считает, что для программирования на С++ нужно обязательно знать С, но здесь напрашивается пример, который знаком любому сишнику, и соответственно, суть констукторов и деструкторов:
2
|
|||||||
|
59 / 52 / 11
Регистрация: 04.08.2015
Сообщений: 731
|
||
| 15.10.2016, 18:06 [ТС] | ||
|
Авось проблема и решится сама собой. Отпишусь как будет готово
0
|
||
| 15.10.2016, 18:06 | |
|
Помогаю со студенческими работами здесь
20
Привести указатель на класс к указателю на void Как привести тип умного указателя к указателю на void? Описать функцию типа void с передачей параметров по ссылке или указателю POWERA234(A,B,C,D), вычисляющую вторую, третью Доступ к указателю - элементу класса Доступ к элементам CStringArray по указателю Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|