|
Труд вопреки насмешкам
|
||||||
Обмен информацией между классами. Попытка 206.03.2018, 18:43. Показов 730. Ответов 4
Метки нет (Все метки)
Первая тема превратилась в гору флуда, попробую еще раз. Модераторы, простите за дубль. Вероятно, я плохо объяснил задачу.
Есть два класса: Class1 и Class2. Они должны использоваться друг в друге. В классе Class2 Class1 используется в переменных, функциях, параметрах функций множество раз (десятки-сотни). В классе Class1 оператор "=" и одна-две статических функции вызывают статическую функцию класса Class2. Что-то похожее на это:
d:\***\***.cpp(13): error C2653: Class2: не является именем класса или пространства имен d:\***\***.cpp(13): error C3861: gn: идентификатор не найден d:\***\***.cpp(16): error C2653: Class2: не является именем класса или пространства имен d:\***\***.cpp(16): error C3861: gn: идентификатор не найден Что нужно добавить/заменить, чтобы их не было?
0
|
||||||
| 06.03.2018, 18:43 | |
|
Ответы с готовыми решениями:
4
Обмен информацией между классами Попытка разобраться с классами в C++ Знакомство с классами, попытка реализации класса матриц |
|
73 / 86 / 40
Регистрация: 02.11.2017
Сообщений: 379
|
|
| 06.03.2018, 18:47 | |
|
В си - никак. нужно сначала определить класс, а потом уже его юзать. Здесь однопроходная компиляция. Максимум - сослаться на еще не определенный класс при помощи указателя.
0
|
|
|
Модератор
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,245
|
||||||
| 06.03.2018, 19:39 | ||||||
|
Примерно так:
0
|
||||||
|
зомбяк
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
|
|||||||||||||||||||||
| 06.03.2018, 19:58 | |||||||||||||||||||||
|
zss, с предварительным объявлением класса нельзя писать реализацию функций до полного объявления второго класса. То есть нужно что-то типа
Или в файлы реализаций (сpp) добавлять заголовочные обоих классов, в которых используются предварительные объявления. Добавлено через 4 минуты //class1.h с классом Class1
1
|
|||||||||||||||||||||
|
Труд вопреки насмешкам
|
|
| 06.03.2018, 21:55 [ТС] | |
|
При попытке вызвать gn() компиляция проходит нормально, но уже во время запуска выпрыгивает ошибка:
Необработанное исключение: System.AccessViolationException: Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена. Что вообще такое "защищенная память"? Возможно, эта ошибка не имеет никакого отношения к взаимодействию классов? Если так, то в чем ее причина? И как ее исправить?
0
|
|
| 06.03.2018, 21:55 | |
|
Помогаю со студенческими работами здесь
5
Обмен информацией с файлами и модульный принцип программирования Связь между 2 классами Взаимодействие между классами
Передача данных между классами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|