Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091

Не компилируется, {ctor}: повторное объявление функции не разрешается. Страно!

29.11.2013, 20:20. Показов 3035. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
 //Листинг 11.4. Перегрузка конструкторов в производных классах
 
#include <string> 
#include <iostream> // для объекта cout
using namespace std;
#include<iomanip>
//Этот файл содержит большую часть манипуляторов C++. Если вы не знаете, что такое манипулятор, не беспокойтесь. 
//Просто подключите это файл смело и не раздумывая  вместе с iostream, хуже не станет.
#include<fstream> 
//Подключается при работе с файлами.
 
 
 
    enum BREED { GOLDEN, CAIRN, DANDIE, SHETLAND, D0BERMAN, LAB };
 
   class Mammal
   {
      public:
         // Конструкторы
         Mammal();
         Mammal(int age);
         ~Mammal();
 
         // Методы доступа
         int GetAge() const { return itsAge; }
         void SetAge(int age) { itsAge = age; }
         int GetWeight() const { return itsWeight; }
         void SetWeight(int weight) { itsWeight = weight; }
 
         //Другие методы
         void Speak() const { cout << "Mammal sound!\n"; }
         void Sleep() const { cout << "shhh. I'm sleeping.\n"; }
 
         protected:
         int itsAge;
         int itsWeight;
    };
 
 
 
    class Dog : public Mammal
    {
       public:
 
          // Конструкторы
          Dog();
          Dog(int age);
          Dog(int age, int weight);
          Dog(int age, BREED breed);
          Dog(int age, int weight, BREED breed);
          ~Dog();
 
          // Методы доступа
          BREED GetBreed() const { return itsBreed; }
          void SetBreed(BREED breed) { itsBreed = breed; }
 
          // Другие методы
          void WagTail() const { cout << "Tail wagging,..\n"; }
          void BegForFood() const { cout << "Begging for food...\n"; }
 
         private:
           BREED itsBreed;
    };
 
 
 
 
    Mammal::Mammal():
    itsAge(1),
    itsWeight(5)
    {
       cout << "Mammal constructor...\n";
    }
 
    Mammal::Mammal(int age):
    itsAge(age),
    itsWeight(5)
    {
       cout << "Mammal(int) constructor...\n";
    }
 
    Mammal::~Mammal()
    {
       cout << "Mammal destructor...\n";
    }
 
 
    Dog::Dog();
    Mammal(),
    itsBreed(GOLDEN)
    {
       cout << "0og constructor...\n";
    }
 
    Dog::Dog(int age):
    Mammal(age),
    itsBreed(GOLDEN)
    {
       cout << "Dog(int) constructor...\n";
    }
 
    Dog::Dog(int age, int weight):
    Mammal(age),
    itsBreed(GOLDEN)
    {
       itsWeight = weight;
       cout << "Dog(int, int) constructor...\n";
    }
 
    Dog::Dog(int age, int weight, BREED breed):
    Mammal(age),
    itsBreed(breed)
    {
       itsWeight = weight;
       cout << "Dog(int, int, BREED) constructor...\n";
     }
 
     Dog::Dog(int age, BREEDbreed):
     Mammal(age),
     itsBreed(breed)
      {
        cout << "Dog(int, BREED) constructor...\n";
      }
 
     Dog::~Dog()
     {
     cout << "Dog destructor...\n";
     }
     int main()
     {
        Dog fido;
        Dog rover(5);
        Dog buster(6,8);
        Dog yorkie (3,GOLDEN);
        Dog dobbie (4,20,DOBERMAN);
        fido.Speak();
        rover.WagTail();
        cout << "Yorkie is " << yorkie.GetAge() << " years old\n";
        cout << "Dobbie weighs ";
        cout << dobbie.GetWeight() << " pounds\n";
        system("pause  ");
        return 0;
     }
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(88): error C2761: {ctor}: повторное объявление функции не разрешается
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(89): error C2059: синтаксическая ошибка: )
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(91): error C2143: синтаксическая ошибка: отсутствие ";" перед "{"
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(91): error C2447: {: отсутствует заголовок функции (возможно, используется формальный список старого типа)
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(118): error C2061: синтаксическая ошибка: идентификатор "BREEDbreed"
1>d:\проги\перегрузка конструкторов в производных классах\перегрузка конструкторов в производных классах\failcodd.cpp(118): error C2084: функция "Dog:og(int)" уже имеет текст реализации
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2013, 20:20
Ответы с готовыми решениями:

Не компилируется программа (объявление и вызов метода)
Сейчас читаю книгу &quot;C# для школьников&quot; и столкнулся с такой трудностью,что не получается откомпилировать программу.Буду признателен,если...

Ошибка "Повторное объявление подпрограммы"
Данный код работает: Function IsCoprime(a, b: Int64); Begin Result := Gcd(a, b) = 1; End; Function IsCoprime(params Args:...

Как заменить .ctor?
for (int i = 0; i &lt; this.Count; i++) { DictionaryEntry dictionaryEntry; ...

20
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
29.11.2013, 20:56
C++
1
2
3
4
5
6
Dog::Dog();
    Mammal(),
    itsBreed(GOLDEN)
    {
       cout << "0og constructor...\n";
    }
первая строка?
проверить не могу, ибо не чем
1
29.11.2013, 21:03

Не по теме:

Dimka-novitsek, кто вас научил ставить using namespace std в середину инклудов?

1
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
29.11.2013, 21:11
88 строка. В конце должно быть двоеточие, а не точка с запятой.
P.S. Странный подход к форматированию кода.

Не по теме:

Цитата Сообщение от D_bl_M Посмотреть сообщение
проверить не могу, ибо не чем
гугл: online c++ compiler

1
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
29.11.2013, 21:12
Цитата Сообщение от Tulosba Посмотреть сообщение
88 строка. В конце должно быть двоеточие, а не точка с запятой.
P.S. Странный подход к форматированию кода.

Не по теме:


гугл: online c++ compiler

ну я как бы уже сообщил об этом, а на счет кода, да, я пока смотрел малеха устал ))
1
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.11.2013, 21:16
Dimka-novitsek, специально для вас: Герб Саттер. "Решение сложных задач на C++".
Миниатюры
Не компилируется, {ctor}: повторное объявление функции не разрешается. Страно!  
1
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
29.11.2013, 21:18
Цитата Сообщение от D_bl_M Посмотреть сообщение
ну я как бы уже сообщил об этом
тогда еще про 118 сообщите
В коде слишком много BREED'а
1
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091
29.11.2013, 21:27  [ТС]
А его правильно в конец инклудов вводить?

Добавлено через 3 минуты
СПАСИБО!!!!!

Я пока код параллельно вел в нотепад++ и смотрю дальнейшие ошибки. Я потом еще поспрашиваю, если не по ошибкам, то по сути самого кода!!
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
29.11.2013, 21:27

Не по теме:

Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
А его правильно в конец инклудов вводить?
Вы когда ответ пишите, цитируйте лучше вопрос, а то не сразу понятно кого и о чем Вы спрашиваете.


Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
А его правильно в конец инклудов вводить?
его
C++
1
using namespace std;
лучше вообще не писать нигде и никогда.
1
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.11.2013, 21:35
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
А его правильно в конец инклудов вводить?
Цитата Сообщение от Tulosba Посмотреть сообщение
лучше вообще не писать нигде и никогда.
А если писать, то после всех инклудов.
1
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
29.11.2013, 21:45
Опять же, зачем нотпад?
Используйте IDE она для этого и создана, не понимаю зачем себе создавать проблемы и потом их решать?!
Все эти ошибки Вам сразу выделятся
1
29.11.2013, 21:48

Не по теме:

Цитата Сообщение от D_bl_M Посмотреть сообщение
Используйте IDE она для этого и создана
IDE, не IDE, но хотя бы подсветку синтаксиса иметь надо.

1
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091
29.11.2013, 22:05  [ТС]
Напрочь не помню про IDE.
0
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
29.11.2013, 22:06
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
Напрочь не помню про IDE.

Не по теме:

вообще не понял что Вы имели ввиду и что это значит?

0
30.11.2013, 11:25

Не по теме:

Цитата Сообщение от D_bl_M Посмотреть сообщение

Не по теме:

вообще не понял что Вы имели ввиду и что это значит?

Наверное не просто так репа в минус ушла.

0
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091
30.11.2013, 22:30  [ТС]
Не помню я, что означает это самое IDE. Как же еще писать?

Собствено, ну и фиг с ним.
0
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
01.12.2013, 08:39
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
Не помню я, что означает это самое IDE. Как же еще писать?

Собствено, ну и фиг с ним.
странный у вас подход, задаете вопрос и не хотите разбираться, тут как бы люди чтоб помогать.
IDE вот почитайте, я думаю тот же qt creator или visual studio на много лучше notepad++
1
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091
03.12.2013, 14:24  [ТС]
СПАСИБО!!


Нотепад хорош тем, что он может подсветить одну переменную, во всей проге. Бывает, что где-то в переменную вкрадается незаметная ошибка, ноль и о например очень похожи. Спору нет, что Студия куда мощнее, но как например в ней так же переменную высветить, я не знаю.
0
 Аватар для D_bl_M
28 / 28 / 1
Регистрация: 25.03.2012
Сообщений: 130
03.12.2013, 14:42
Цитата Сообщение от Dimka-novitsek Посмотреть сообщение
СПАСИБО!!
Нотепад хорош тем, что он может подсветить одну переменную, во всей проге. Бывает, что где-то в переменную вкрадается незаметная ошибка, ноль и о например очень похожи. Спору нет, что Студия куда мощнее, но как например в ней так же переменную высветить, я не знаю.
qt creator может, и более удобен для C++ (точнее под него заточен)
visual studio комбайн (имхо) лично мне там многое не требуется
1
16 / 16 / 2
Регистрация: 26.04.2012
Сообщений: 1,091
03.12.2013, 15:11  [ТС]
Визуальное программирование - вообще удивительная статья (http://ru.wikipedia.org/wiki/%... 0%B8%D0%B5)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.12.2013, 15:11
Помогаю со студенческими работами здесь

Страно отрабатывает триггер
СУБД: firebird 2.1 Начальная проблема: Наткнулся, что очень долго происходит обновление записи в таблице (8 000 Fetches). Условие...

Страно по какой причине был удален мой пост?
Страно по какой причине был удален мой пост?

Объявление функции внутри функции. Keil4
А можно ли в keil внутри функции объявлять новые? Например так? Раньше я так делал на PIC24, а сейчас оно не хочет( int funktion1 (int...

Объявление функции
Смотрел видео урок и увидел странное для себя(!) объявление функции, оно имеет следующий вид: functionname : function(varname: integer) :...

Объявление функции
Всем доброго времени суток! Подскажите пожалуйста, как правильно объявить функцию, которая возвращает указатель на двумерный массив. И...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru