|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
Защита от повторного определения классов26.04.2022, 11:23. Показов 2077. Ответов 20
Метки нет (Все метки)
Здравствуйте, уважаемые знатоки. Столкнулся с проблемой: в исполняемом файле ".cpp" содержится описание методов класса из "class.h". Помимо этого, в заголовке "class.h" присутствуют включения других заголовков. Так же, заголовок "class.h" включается в "main.cpp". Компилятор жалуется на множественное определение классов. Стандартная защита не помогает :/
Очень хочется вынести определение методов класса из заголовка, подскажите как это сделать без ошибок?
0
|
|
| 26.04.2022, 11:23 | |
|
Ответы с готовыми решениями:
20
Защита от повторного логина из другого клиента. |
|
Гвоздь Задиров
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
|
|
| 26.04.2022, 11:28 | |
|
0
|
|
|
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,824
|
|
| 26.04.2022, 11:36 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 11:40 [ТС] | |
|
Защита в виде #pragma once
или конструкции #ifndef _CLASS_H #define _CLASS_H #endif // !_CLASS_H
0
|
|
|
2395 / 1925 / 763
Регистрация: 27.07.2012
Сообщений: 5,569
|
|
| 26.04.2022, 11:46 | |
|
SanYong99, а весь файл как выглядит?
0
|
|
|
Гвоздь Задиров
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
|
||
| 26.04.2022, 11:47 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 11:53 [ТС] | |
|
Да я прекрасно понимаю что всё сработало так как должно было. Я не понимаю почему оно так работает и как от этой ошибки избавиться...
Извините что не синьор :/
0
|
|
|
Гвоздь Задиров
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
|
|
| 26.04.2022, 11:56 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
||||||||||||||||
| 26.04.2022, 12:05 [ТС] | ||||||||||||||||
|
John Prick
стандартный .cpp с описанием методов класса, больше в нём ничего нет. В заголовке этого класса включается ещё куча заголовков. Добавлено через 1 минуту Разбираюсь как это сделать. Тыкаю на все кнопки Добавлено через 3 минуты
возможно, дело в том, что внутри "WORCER.h" включается вообще все остальные файлы заголовков и библиотек (не непосредственно в нём, а в других .h которые в него включены)
0
|
||||||||||||||||
|
Гвоздь Задиров
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
|
|||
| 26.04.2022, 12:05 | |||
Сообщение было отмечено SanYong99 как решение
Решение
1
|
|||
|
фрилансер
6473 / 5693 / 1131
Регистрация: 11.10.2019
Сообщений: 15,171
|
|
| 26.04.2022, 12:06 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 12:09 [ТС] | |
|
да, там всё окей. Везде стоит #pragma once, раньше работала
Добавлено через 1 минуту Я это запускать вне визуалстудии не буду, void валиден
0
|
|
|
фрилансер
6473 / 5693 / 1131
Регистрация: 11.10.2019
Сообщений: 15,171
|
|
| 26.04.2022, 12:12 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 12:15 [ТС] | |
|
пока это делается для тестов и обучения, всё ок.
Так конечно нельзя делать в реальных проектах, я не совсем тупой)
0
|
|
|
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,824
|
|
| 26.04.2022, 12:17 | |
|
Если в VS делаешь - попробуй либо создать новый проект и дать ему эти файлы, либо полную пересборку запусти.
1
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
||||||
| 26.04.2022, 12:30 [ТС] | ||||||
|
не помогает.
![]() Добавлено через 3 минуты Если я не создаю второй файл .cpp ("WORKER.cpp"), а определяю методы внутри заголовка("WORKER.h") - всё работает и компилируется. Где-то в этом моенте:
0
|
||||||
|
2395 / 1925 / 763
Регистрация: 27.07.2012
Сообщений: 5,569
|
|
| 26.04.2022, 12:31 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 12:32 [ТС] | |
|
да, удалено
0
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|
| 26.04.2022, 12:55 | |
|
SanYong99, https://www.youtube.com/watch?v=G_jcBrrYPAs
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2022
Сообщений: 9
|
|
| 26.04.2022, 19:41 [ТС] | |
|
чтож, ответ был проще чем я думал. Оказалось, что внутри одного из хеддеров был определён метод класса.. Всему виной невнимательность)
Спасибо всем за помощь в любом случае!
0
|
|
| 26.04.2022, 19:41 | |
|
Помогаю со студенческими работами здесь
20
Редактирование сообщения в защита worpdress от повторного сабмита?
Применение концепции повторного использования классов при разработке приложений Применение концепции повторного использования классов при разработке приложений Порядок определения зависимых классов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|