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

C++

Войти
Регистрация
Восстановить пароль
 
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
#1

Головоломка - C++

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

Скучно как-то на форуме, нету интересных задач. Вот решил для общего развития задать "загадку":
как на этапе компиляции, пользуясь средствами С++, определить является ли класс Б потомком класса А :cofee2:
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2010, 00:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Головоломка (C++):

Головоломка - C++
//PC1.cpp== Считывает числа с текстового файла и записывает в массив. #include <fstream> #include <iostream> int SIZE = 50; using...

Головоломка - C++
Я ломаю мозг, не знаю что делать помогите. Пытался вспоминать программач, не помогло, кто ответ знает ? #include<iostream> #include...

Головоломка Хитори - C++
Выберите на сайте Nikoli любую головоломку, кроме судоку: http://www.nikoli.co.jp/en/puzzles/. Напишите для неё функцию, которая получает...

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

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

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

6
volovzi
267 / 169 / 8
Регистрация: 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
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 00:42  [ТС] #3
Не ошибку, а именно узнать, что, например, параметр шаблона - это класс, который реализует нужный интерфейс.
0
volovzi
267 / 169 / 8
Регистрация: 14.03.2010
Сообщений: 501
26.11.2010, 00:55 #4
Тогда я не понимаю, что значит "на этапе компиляции"...
0
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 01:16  [ТС] #5
Это значит, что я могу, например, в своем шаблоне держать булевую переменную значение которой какраз и указывает на то, что класс-параметр шаблона унаследован от целевого класса и могу ее использовать например для организации какой-то логики.
0
CheshireCat
Эксперт С++
2893 / 1242 / 78
Регистрация: 27.05.2008
Сообщений: 3,380
26.11.2010, 11:02 #6
И что здесь "головоломного"? Задача давным-давно решена Андреем Александреску, и разобрана в его "Современном проектировании на C++", глава 2.7 Распознавание конвертируемости и наследования на этапе компиляции.
К чему изобретать собственный велосипед? Только из любопытства разве что.....
0
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
26.11.2010, 12:08  [ТС] #7
Решение задачи и у Страуструпа, и у Александреску, и в других работах описано, а заниматься таким можно просто чтобы размять мозги
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2010, 12:08
Привет! Вот еще темы с ответами:

Головоломка о путешествии коня - C++
Задача - составить такую последовательность ходов, при которой конь может обойти всю шахматную доску, побывав на каждой клетке лишь один...

головоломка для знающих... - C++
Описать функцию Ln1(x, ) вещественного типа (параметры x,  — вещественные, |x| < 1,  > 0), находящую приближенное значение функции ln(1...

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

Головоломка с матрицей. Очень интересно! - C++
Не в корысных целях(мне эта программа не нужна, просто интересно стало, как такое реализовать) пишите свои соображения по поводу решения:...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
26.11.2010, 12:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru