Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 25.06.2018, 17:04   #11
waleri
Профессионал
 
Регистрация: 13.07.2012
Адрес: Нижний Новгород
Сообщений: 5,536
Репутация: 1728
По умолчанию

Цитата:
Сообщение от 2Lui Посмотреть сообщение
Это на что похоже?
Это ни на что не похоже!
Во-первых, интерфейс с невиртуальным методом смысла не имеет, во-вторых, можете в каждом классе писать напрямую Compare метод с нужным параметром, эффект будет тем же.
waleri вне форума   Ответить с цитированием
Старый 25.06.2018, 17:18   #12
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,063
Репутация: 2054

icq: 216409213
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Во-первых, интерфейс с невиртуальным методом смысла не имеет
Вы не видите суслика, а он там есть... __interface, МС специфичная штука.
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 25.06.2018, 18:14   #13
waleri
Профессионал
 
Регистрация: 13.07.2012
Адрес: Нижний Новгород
Сообщений: 5,536
Репутация: 1728
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Вы не видите суслика
Даже если так, единственная польза в том, что компилятор будет напоминать, что надо этот метод переопределить - толку от этого мало а вот overhead будет. Данный шаблон это попытка скрестить ежа и ужа...
waleri вне форума   Ответить с цитированием
Старый 25.06.2018, 18:29   #14
2Lui
Форумчанин
 
Аватар для 2Lui
 
Регистрация: 14.03.2017
Сообщений: 67
Репутация: 0
По умолчанию

Цитата:
Данный шаблон это попытка скрестить ежа и ужа...
Почему же? есть у нас допустим 2 класса например Book и Product и есть интерфейс CompareTo и то что мы в него передадим(объект класса) то и будет сравниваться. Ничего тут не скрещиваем.
Код:

template<class MyType>
__interface IComparable {
	int compareTo(MyType* obj);
};
///

//......main.cpp
Book** books = new Book*[3];
	books[0]= new Book("A1", "V1", 1991);
	books[1] = new Book("A2", "V2", 1998);
	books[2] = new Book("A3", "V3", 1990);

	Book* maxBook = (Book*)(getMaxItem((IComparable**)books,3));

	printf("Max= %s\n", maxBook->toString().data());
	//----------------------------------------
	Product** products = new Product*[4];
	products[0] = new Product("T1",11,34);
	products[1] = new Product("T2",22,12);
	products[2] = new Product("T3", 89, 84);
	products[3] = new Product("T1", 78, 120);
	Product* maxProduct = (Product*)(getMaxItem((IComparable**)products,4));
	printf("Max product= %s\n", maxProduct->toString().data());


Последний раз редактировалось 2Lui; 25.06.2018 в 18:52.
2Lui вне форума   Ответить с цитированием
Старый 25.06.2018, 20:45   #15
waleri
Профессионал
 
Регистрация: 13.07.2012
Адрес: Нижний Новгород
Сообщений: 5,536
Репутация: 1728
По умолчанию

Цитата:
Сообщение от 2Lui Посмотреть сообщение
Ничего тут не скрещиваем.
Если бы ничего не скрещивали, мы бы не вели этот диалог.
Вот попробуйте сделать, то что вы описали и посмотрим, что у вас получиться.
waleri вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка компиляции promer Общие вопросы Delphi 2 12.08.2016 13:38
MVS 2010 выдает ошибку и вылетает при компиляции zink Visual C++ 1 29.11.2012 23:32
Фатальная ошибка в MVS 2010. OrioshQaaaa Visual C++ 12 12.06.2012 23:56
MVS C++ 2008 (Ошибка пути к *.exe) Geg[C/c++] Общие вопросы C/C++ 10 16.09.2009 05:02
Ошибка в MVS 2008 TheWanderer Общие вопросы C/C++ 9 12.11.2008 14:21


06:08.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru