Форум программистов, компьютерный форум CyberForum.ru

Множественное наследование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверка отсортированности массива http://www.cyberforum.ru/cpp-beginners/thread29801.html
Привет всем, стоит задача, которую я в Делфи сделал, а надо в С++. В с++ я полный бегиннер. Может поможет кто-то? Задача такая: нужно определить отсортирован ли массив числел. Массив находится в тектовом файле. Спасибо!
C++ Гамильтонов цикл надо разобрать прогу.выявления Гамильтонова цикла в графе... http://www.cyberforum.ru/cpp-beginners/thread29787.html
C++ Нужна помощь в исправлении кода одной функции...
Плиз.. помогите исправить код функции 'void Opt()', мне необходимо было создать программу которая читатет файл 'd:\file.txt' , создает и копирует всё его содержимое в типизированный файл 'd:\out.dat' Данная функция по теории должна работать так, вводишь число равное 500 если оптовая цена какого-либо товара равна 500 то нужно вывести на экран всю строку с этим товаром (название, оптовую и...
Процедура в процедуре. Как сделать. C++
Вопрос в том, можно ли вызвать в процедуру процедуру. Если да, то какой синтаксис будет в этом случае правильным.
C++ Функция в задаче с процентами. http://www.cyberforum.ru/cpp-beginners/thread29754.html
#include <stdio.h> #include <conio.h> #include <math.h> int percent (int x, int y) { float c; if (x>0&&y>0) { c=x/100*y;
C++ Сортировка данных стуктуры Здравствуйте, пытался сортировать данные стуктуры, но ничего не выходило, либо выводятся нули, либо вообще ничего. #include <stdio.h> #include <iostream.h> #include <conio.h> #include <string.h> #include <stdlib.h> struct firm { char name; подробнее

Показать сообщение отдельно
Викдон
67 / 67 / 4
Регистрация: 21.11.2008
Сообщений: 226

Множественное наследование - C++

12.04.2009, 23:59. Просмотров 836. Ответов 3
Метки (Все метки)

Возник вопрос по теме множественное наследование. Вот скажем у нас определены классы:

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
class Animal{
  public:
    int GetAge(){return Age;}
  public:
    int Age;
};
 
 
 
class Horse:public Animal{
 public:
  ...........
};
 
 
class Bird: public Animal{
 public:
  .........
};
 
 
class Pegasus: public Horse, public Bird{
 
};
 
int main(){
 
Pegasus R;
 
R.Horse::GetAge;
 
return 0;
}
т.е у нас есть класс Animal -базовый для классов Horse и Bird , Класс Pegasus наследуется из классов Horse и Bird. В строке: "R.Horse::GetAge;" происходит явное устранение неоднозначности метода GetAge который присутствует в классах Horse и Bird.

Но в книге прочел следующее: "Имейте в виду, что при явном устранении неоднозначности базового класса возникает риск того, что при добавлении между текущим классом и его предком промежуточного класса произойдет одновременный вызов метода прошлого и нынешнего базового классов. Это может привести к непредвиденным эффектам"

Это получается что если я сделаю вызов так: R.Animal::GerAge(); вызовется еще и метод R.Horse::GetAge;??
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru