270 / 176 / 46
Регистрация: 12.03.2010
Сообщений: 494
1

Головоломка

26.11.2010, 00:16. Показов 1487. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Скучно как-то на форуме, нету интересных задач. Вот решил для общего развития задать "загадку":
как на этапе компиляции, пользуясь средствами С++, определить является ли класс Б потомком класса А :cofee2:
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2010, 00:16
Ответы с готовыми решениями:

Головоломка
Я ломаю мозг, не знаю что делать помогите. Пытался вспоминать программач, не помогло, кто ответ...

Головоломка
//PC1.cpp== Считывает числа с текстового файла и записывает в массив. #include <fstream> #include...

Головоломка Хитори
Выберите на сайте Nikoli любую головоломку, кроме судоку: http://www.nikoli.co.jp/en/puzzles/....

интересная головоломка
помоготе решить задачу про спички я уже неделю голову ломаю....Даны n-спичек и 2 игрока,каждый...

6
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
26.11.2010, 00:29 2
Manjak, в смысле, получить ошибку?
Ну тогда вот что первое в голову приходит:
C++
1
2
3
4
5
6
7
8
9
10
11
12
struct A {};
 
struct B : A {};
 
struct C {};
 
int main (int argc, char * const argv[]) {
    A * b = new B; // Порядок.
    A * c = new C; // Ошибка.
 
    return 0;
}
0
270 / 176 / 46
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 00:42  [ТС] 3
Не ошибку, а именно узнать, что, например, параметр шаблона - это класс, который реализует нужный интерфейс.
0
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
26.11.2010, 00:55 4
Тогда я не понимаю, что значит "на этапе компиляции"...
0
270 / 176 / 46
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 01:16  [ТС] 5
Это значит, что я могу, например, в своем шаблоне держать булевую переменную значение которой какраз и указывает на то, что класс-параметр шаблона унаследован от целевого класса и могу ее использовать например для организации какой-то логики.
0
Эксперт С++
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
26.11.2010, 11:02 6
И что здесь "головоломного"? Задача давным-давно решена Андреем Александреску, и разобрана в его "Современном проектировании на C++", глава 2.7 Распознавание конвертируемости и наследования на этапе компиляции.
К чему изобретать собственный велосипед? Только из любопытства разве что.....
0
270 / 176 / 46
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 12:08  [ТС] 7
Решение задачи и у Страуструпа, и у Александреску, и в других работах описано, а заниматься таким можно просто чтобы размять мозги
0
26.11.2010, 12:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2010, 12:08
Помогаю со студенческими работами здесь

Интересная головоломка
1.С помощью текстового редактора создать файл который содержит текст.Длина ряда с текстом не должна...

Очень интересная головоломка..
Дан массив целых чисел (n=10); Переставить элементы след образом a,a,a,a,a,a..... Целый...

Головоломка морской бой
Помогите написать головоломку морской бой. Необходимо чтобы программа могла рандомно создавать ее,...

Головоломка о голландском флаге
Даны три числа - a, b, c. Они равны 0,1,2, но не упорядочены. Не используя if поменять их местами...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru