Antern
написал 3 января 2007 года в 10:27 (1079 просмотров)
Ведет себя
как мужчина; открыл 20 тем в форуме, оставил 84 комментария на сайте.
есть main.h
есть main.cpp(который инклудит main.h)
в хейдере описывается класс fghtr с конструктором.
при попытке компияции хейдера с классом пишет
[Linker error] undefined reference to `fighter::~fighter()'
делаю ему деструктор, описываю его всякими способами. не помогает.
что оно от меня хочетЪ? :’-(
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Не сочти за обиду, приведи кусок кода, как он есть. Минимально. Потому как если класс у тебя fghtr, а деструктор ~fighter(), то сам понимаешь…
Good Luck,
UT
Вот посмотри.
Вот так будет ошибка
Вот такая
g++ main.cpp -o main
/tmp/ccWFPMbJ.o(.text+0×18): In function `main’:
: undefined reference to `fighter::fighter[in-charge]()'
collect2: ld returned 1 exit status
А вот так
ошибки уже не будет
~$ g++ main.cpp -o main
~$ main
allez normallez
Это то, что тебе надо?
Good Luck,
UT
хоть немного и не это спрашивал, но всёравно большое спасибо . в частности за краткий гайд по gcc компилеру =)
вообще просто я уже после 12 часов кодинга моразм несу)
запустил MS_VC++2005 — оно мне сказало: что-то про инициализацию массива(добавить фигурные скобки только и всего надо было).
Если точнее: мне нужен был массив классов. и при попытке class_name object_name[8]=constructor(…);
линкер ругался на «деструктор». сделал class_name object_name[8]={constructor(…),и еще 7 раз конструктор}; — успокоилс0 компилер. как-то стыдно вже спрашивать еще про 1 фигню тк через 2 часа допру сам перечитав все учебники «для начинающих»..