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

Полиморфизм аргумента - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Из файла не читатаются строки http://www.cyberforum.ru/cpp-beginners/thread1797758.html
По задаче имеется текстовый файл. И нужно считать этот файл программу и вывести все в консоль. Сама программа: #include <iostream> #include <string> #include <array> #include <cstring> #include <cctype> #include <fstream> using namespace std;
C++ Не могу корректно переписать элементы из одного массива в другой Нужно разработать программу, которая печатала бы имена криптопровайдеров. Для это нужно создать символьный массив из 80 элементов и переписать в них элементы из области pszName. Исходный код выдает ошибку: error C2440: '=' : cannot convert from 'LPTSTR' to 'char ' #include "stdafx.h" #include <iostream> #include <conio.h> #include <stdlib.h> #include <string.h> #include... http://www.cyberforum.ru/cpp-beginners/thread1797756.html
C++ Неясный вызов функции
Имеются две функции void may(char a) { using std::cout; using std::endl; cout << "void may char a" << endl; } void may(const char &a) { using std::cout;
C++ Имеет ли смысл писать makefile?
Всем доброго дня, вообщем сабж, сейчас для само развития занимаюсь написанием 3д движка на опенгл, дело идет потихоньку, и вот задался вопросом стоит ли для такого проекта писать мейкфайл, в целом компиляция занимает относительно много времени и будет ли профит от этого или же VS сама понимает что ей не надо пересобирать весь проект ?
C++ Синтаксическая ошибка во встроенном коде на языке ассемблера в "код операции" http://www.cyberforum.ru/cpp-beginners/thread1797694.html
visual studio 2013 выдал такую ошибку error C2400: синтаксическая ошибка во встроенном коде на языке ассемблера в "код операции"; обнаружено "newline, что это за ошибка? КОД #include "stdafx.h" #include <iostream> using namespace std; void main()
C++ Возможна ли инициализация в инициализации? Изучая новый стандарт, заинтересовался: а можно ли как-то сделать массив указателей, например, на тип int, инициализируя ссылочные переменные, на которые указывали бы указатели, в одном выражении? Как-то так: int* pArr = {&(int a = 5), &(int b = 8)} Или это слишком мерзкое извращение для компактности? подробнее

Показать сообщение отдельно
DrOffset
6425 / 3799 / 880
Регистрация: 30.01.2014
Сообщений: 6,592
23.08.2016, 17:36     Полиморфизм аргумента
Цитата Сообщение от Vhodnoylogin Посмотреть сообщение
хочется, чтобы вывелось "Сын с Дочерью"
В поиске "двойная диспетчеризация".
Как-то так:
Кликните здесь для просмотра всего текста
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
class Son;
class Daughter;
 
class Father {
 
public:
    virtual void test(Father * a){
        cout << "Father with Father";
    }
    virtual void test(Son * a){
        cout << "Father with Son";
    }
    virtual void test(Daughter * a) {
        cout << "Father with Daughter";
    }
};
 
class Son
    : public Father
{
public:
    virtual void test(Father * a){
        a->test(this);
    }
 
    virtual void test(Son * a){
        cout << "Son with Son";
    }
    virtual void test(Daughter * a){
        cout << "Son with Daughter";
    }
};
 
class Daughter
    : public Father
{
public:
    virtual void test(Father * a){
        a->test(this);
    }
    virtual void test(Son * a){
        cout << "Daughter with Son";
    }
    virtual void test(Daughter * a){
        cout << "Daughter with Daughter";
    }
};
 
 
int main()
{
    Father *d = new Daughter();
    Father *s = new Son();
    s->test(d); // выведет: "Daughter with Son";
}
 
Текущее время: 22:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru