Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Не компилится :(  (Прочитано 11416 раз)
0 Пользователей и 1 Гость смотрят эту тему.
guest
Гость
« : 11-08-2004 15:48 » 

При попытке ввести в клас конструктор (тобиш процедуру с именем класса ) получается облом : когда компилишь ето дело gcc или qcc выдаются ошибки (definition of implicitly-declared `ElArea::ElArea(), ANSI C++ forbids declaration `ELArea' with no type).
  В чём проблема ?
         artem
Записан
Serega
Гость
« Ответ #1 : 11-08-2004 17:45 » 

код покажи
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 11-08-2004 17:56 » 

а ты попробуй компилить через g++.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #3 : 11-08-2004 18:02 » 

И еше может быть маленькая такая ошибка. Когда закрывал объявление класса забыл поставить ; (точка с запятой). Я один раз так сидел день и не мог понять где ошибка. Объявление классов прошло в Хедере, а ошибку дает в самой программе и тоже на конструктор ругается.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #4 : 12-08-2004 04:27 » 

Цитата

forbids declaration `ELArea' with no type


тип процедуры-конструктора не нужно указывать, если перед
Цитата

ElArea::ElArea()

у тебя поставлен тип (даже void) - убери.

Если в этом причина.
Записан

npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 12-08-2004 08:12 » 

Цитата
definition of implicitly-declared `ElArea::ElArea()

Я подозреваю, что в объявлении класса не объявлен конструктор.  об этом говорит implicitly-declared

Я попробовал скомпилировать такой пример:
Код:
class ElArea {
public:
    int x;
};

ElArea::ElArea() {
    x = 1;
}

Получил аналогичную ошибку
Цитата: g++
try.cpp:8: error: definition of implicitly-declared `ElArea::ElArea()'
try.cpp:8: error: declaration of `ElArea::ElArea()' throws different exceptions
try.cpp:2: error: than previous declaration `ElArea::ElArea() throw ()'

Если в объявление класса добавить конструктор, то всё компилируется
Код:
class ElArea {
public:
    int x;
    ElArea();
};
« Последнее редактирование: 30-11-2007 22:18 от Алексей1153++ » Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines