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

Виртуальные фукнции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Опять про реализацию класса в отдельном файле http://www.cyberforum.ru/cpp-beginners/thread633295.html
Допустимо ли следующее? есть проект в Visual Studio 2010. в нем следующие файлы: main.cpp - собссно программа MyClass.h - интерфейс класса MyClass MyClass.cpp - реализация класса MyClass...
C++ Размер вектора и вывод элементов Объясните почему в функции print размер передаваемого вектора v.size()=0? Соответсвенно не работает цикл for в print(). #include <iostream> #include <vector> using namespace std; void... http://www.cyberforum.ru/cpp-beginners/thread633285.html
C++ Деление числа на разряды
Дан массив из n натуральных четырёхзначных чисел. Вывести на экран только те, у которых сумма первых двух цифр равна сумме двух последних. Собственно сам вопрос, как разделить четырёхзначное число...
C++ Перегрузка операции инкремента
Как известно, постинкремент возвращает r-value, а преинкремент - l-value. То есть: ++(++x); // допустимо (x++)++; // ошибка компиляции Как грамотно реализовать это для своего класса? Допустим...
C++ Наследование. Виртуальные функции http://www.cyberforum.ru/cpp-beginners/thread633220.html
Всем привет. Недавно изучил раздел , который в названии. Вы могли бы дать задачку по выше указанной теме над которой надо хорошо подумать?
C++ Проблемма с вложенными классами Собственно, код программы. Компилятору не нравятся строки №41 и 47. Можете подсказать, в чем может быть причина? Компилятор gcc 4.5 //Задание 6.cpp //База данных сотрудников #include... подробнее

Показать сообщение отдельно
Holand
8 / 5 / 1
Регистрация: 30.03.2012
Сообщений: 14
06.08.2012, 15:46
Я вот вообще не понял зачем там виртуальная функция - набросал без нее работает вроде как. Уточни задание если что.

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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <stdlib.h>
 
using namespace std;
 
const int cLimit = 10;
 
class Array
{
public:
    Array();
    ~Array() {};
public:
    unsigned int m_aData[cLimit];
    unsigned int m_nCurSize; //Number of elements
public:
    void Summ(Array a, Array b);
};
 
Array::Array()
{
    m_nCurSize = 0;
}
 
void Array::Summ(Array a, Array b)
{
    for (unsigned int i = 0; i < m_nCurSize; i++)
    {
        m_aData[i] = a.m_aData[i] + b.m_aData[i];
    }
}
 
class Hex : public Array
{
public:
    bool Set(char* pHex)
    {
        //Decimal
        if (m_nCurSize >= cLimit)
            return false;
        char* pEnd = NULL;
        m_aData[m_nCurSize] = strtol(pHex, &pEnd, 16);
        m_nCurSize++;
        return true;
    }
};
 
class Money : public Array
{
public:
    bool Set(unsigned int nElement)
    {
        //Decimal
        if (m_nCurSize >= cLimit)
            return false;
        m_aData[m_nCurSize] = nElement;
        m_nCurSize++;
        return true;
    }
};
 
int _tmain(int argc, _TCHAR* argv[])
{
    Array aRes;
    Money aDec;
    Hex aHex;
 
    unsigned int nSize = 0;
    cout << "Enter size" << endl;
    cin >> nSize;
    
 
    cout << "Enter dec elements:" << endl;
    unsigned int nElement = 0;
    for (unsigned int i = 0; i < nSize; i++)
    {
        cin >> nElement;
        aDec.Set(nElement);
    }
 
    cout << "Enter hex elements:" << endl;
    char* pElement = NULL;
    for (unsigned int i = 0; i < nSize; i++)
    {
        pElement = new char();
        cin >> pElement;
        aHex.Set(pElement);
    }
 
    aRes.m_nCurSize = nSize;
    aRes.Summ(aHex, aDec);
 
    cout << "Summ of elements:" << endl;
    for (unsigned int i = 0; i < nSize; i++)
    {
        cout << aRes.m_aData[i] << endl;
    }
 
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru