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

Для чего виртуальные функции? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обнаружением нулевого указателя http://www.cyberforum.ru/cpp-beginners/thread1001175.html
Делаю алгоритм Хаффмана. Возникла проблема при построении таблицы соответствий. void MakeT (Node* root){ if(root->L!=NULL) {//проблемная строка code.push_back(0); MakeT(root->L); } if(root->R!=NULL) { code.push_back(1); MakeT(root->R);
C++ Не роботает сортировка Проблема в сортировке( программа проходит, но ничего полезного не делает), ее, мне так кажется, надо реализовать с помощью адресов. Буду рада всем вашым советам!!! main # include "class_m.h" # include <iostream> using namespace std; void main() http://www.cyberforum.ru/cpp-beginners/thread1001169.html
C++ Чтение из текстового файла
Есть список автомобилей с параметрами (марка ,цвет ,стоимость и так далее ) , хранившиеся в текстовом файле . Нужно написать программу в которой делается следующее. корректировку или дополнение списка с клавиатуры; сортировку по названию марки,цвета, стоимости; вывод на экран информации о автомобиле, название которого введено с клавиатуры; запись списка в файл под тем же или новым...
Выявление ошибки C++
Помогите, пожалуйста, исправить программу (в функции treug в качестве параметра нужно использовать указатель *p), затем его использовать при вызове функции. Заранее большое спасибо. #include <iostream.h> #include <stdio.h> //vvod-vyvod #include <math.h> void treug(float a, float b, float c, int *p) { (*p)=0; if ((a+b>c) || (b+c>a) || (c+a>b)) {(*p)=1;
C++ Как создать динамический двумерный массив http://www.cyberforum.ru/cpp-beginners/thread1001133.html
Можно ли создать на С++ динамический двухмерный масив? Как? int z , x ; cin >> z ; cin >> x ; int *arr = new int(z); int *arr1 = new int(x); так не получаеться!
C++ Удаление последнего слова из строки Написать программу удаления последнего слова из строки. Заранее благодарю. подробнее

Показать сообщение отдельно
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11822 / 6801 / 769
Регистрация: 27.09.2012
Сообщений: 16,869
Записей в блоге: 2
Завершенные тесты: 1
07.11.2013, 22:16     Для чего виртуальные функции?
Для реализации позднего связывания.

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
#include <iostream>
 
 
struct Parent {
    virtual void foo ( ) {
        std :: cout << "Parent::foo ( )" << std :: endl ;
    }
    void bar ( ) {
        std :: cout << "Parent::bar ( )" << std :: endl ;
    }
} ;
 
struct Child : Parent {
    virtual void foo ( ) {
        std :: cout << "Child::foo ( )" << std :: endl ;
    }
    void bar ( ) {
        std :: cout << "Child::bar ( )" << std :: endl ;
    }
} ;
 
void test ( Parent & obj ) {
    obj.foo ( ) ;
    obj.bar ( ) ;
}
 
int main ( ) {
    Parent obj1 ;
    Child obj2 ;
    std :: cout << "Test Parent:" << std :: endl ;
    test ( obj1 ) ;
    std :: cout << "Test Child:" << std :: endl ;
    test ( obj2 ) ;
}
 
Текущее время: 06:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru