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

Пример из собеседования по C++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Объектно-ориентированное программирование http://www.cyberforum.ru/cpp-beginners/thread971699.html
Кто силён и мне поможет? Объектно-ориентированное программирование 1. Объявить класс по приведенному ниже заданию в соответствии с номером варианта и определить для него конструктор по умолчанию, конструктор инициализации и конструктор преобразования. 2. Определить функции-члены класса для ввода и вывода членов-данных внутри объявления класса. 3. Составить программу, которая определяет...
C++ Как динамически выделять память на один элемент массива? Вот программа: int main() { int n,a,b; Item *mas; cout << "Enter amount of coordinates" << endl; cin >> n; cout << "Enter coordinates" << endl; for(int i = 0; i < n; i++) http://www.cyberforum.ru/cpp-beginners/thread971694.html
сумма чисел.Интересная программа C++
Найти сумму чисел на интервале [x;y), которые в четверичной системе записи состоят только из двоек и единиц. Использовать - прибавление 1,=,<,+,-,*,:,целочисленное деление , % остаток от деления.
C++ Даны целые числа a,b,c
Если a<=b<=c то все значения заменить их квадратами, если a>b>c то каждое число заменить наибольшим из них, в противном случае сменить знак каждого числа на противоположный a=a*a b=b*b c=c*c, a<=b<=c a=c b=c, a>b>c a=-a b=-b c=-c, во всех остальных случаях
C++ Задана матрица А(4,4). Заменить первый нуль в каждом столбце на количество нулей в этом столбце http://www.cyberforum.ru/cpp-beginners/thread971672.html
2) Задана матрица А(4,4). Заменить первый нуль в каждом столбце на количество нулей в этом столбце.
C++ Подскажите для начинающего! Подскажите с чего лучше начать изучать программирование для начинающего? Какие книги нужны?С какого языка начать? Программированием никогда не занимался вообще... подробнее

Показать сообщение отдельно
andrew20101
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 3

Пример из собеседования по C++ - C++

07.10.2013, 23:26. Просмотров 760. Ответов 5
Метки (Все метки)

Граждане, есть такой пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class B
{
private:
    virtual void f() { std::cout << "B::f()" << std::endl;}
public:
    void g() { std::cout << "B::g()" << std::endl;}
};
 
class D : public B
{
private:
    double g;
public:
    void f() { std::cout << "D::f()" << std::endl;}
};
 
 
int main(int, char**)
{
    D d;
    d.g();
    return 0;
}
Скажите, пожалуйста, почему этот код не компилится? Точнее ошибку компилятора я могу прочитать, но не могу взять в толк какой принцип c++ мешает компиляции кода. Про сокрытие методов понятно, но здесь же идет четкий вызов функции, а не доступ к закрытой переменной. Почему не видит метод g класса B?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru