Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Абстрактный шаблон

Ответить
Настройки темы
C/C++ - [решено] Абстрактный шаблон

Аватара для crashtuak

Старожил


Сообщения: 467
Благодарности: 25


Конфигурация

Профиль | Отправить PM | Цитировать


Есть описание абстрактного класса шаблона:
Код: Выделить весь код
template <class T>
class AbstractDrawer
{
public:
    AbstractDrawer(FontFace &face):face(face)
    {
		...
    }
    void setText(ulong * text, uint length)
    {
		...
        layoutGlyphs(text,length);
    }
    void draw(int x, int y)
    {
        for(...)
        {
            drawGlyph(...);
        }
    }
protected:
    virtual void drawGlyph(BaseGlyph glyph, int x, int y) = 0;
    void layoutGlyphs(ulong * text, uint length)
    {
		...
		... = new T();
    }
private:
	...
};
И его наследник:
Код: Выделить весь код
class QDrawer : public FT::AbstractDrawer<QGlyph>
{
public:
    QDrawer(FT::FontFace face, QPainter &painter):AbstractDrawer(face),painter(painter)
    {}
protected:
    virtual void drawGlyph(BaseGlyph *glyph, int x, int y)
    {
        QGlyph* _glyph = (QGlyph*)glyph;
        painter.drawImage(x,y,_glyph->getImage());
    }
private:
    QPainter &painter;
};
При попытке создать QDrawer получаю сообщение об его абстрактности из за метода AbstractDrawer<T>::drawGlyph. В чем мой прокол?

-------
Мне надо не так много "Полезных сообщений", чтоб сровнять их количество с моими постами :).


Отправлено: 21:41, 20-01-2013

 

Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


У вас функции разные

Код: Выделить весь код
virtual void drawGlyph(BaseGlyph glyph, int x, int y) = 0;
virtual void drawGlyph(BaseGlyph *glyph, int x, int y)
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:49, 20-01-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для crashtuak

Старожил


Сообщения: 467
Благодарности: 25

Профиль | Отправить PM | Цитировать


Ага, увидел, спасибо, жосткий фейл

-------
Мне надо не так много "Полезных сообщений", чтоб сровнять их количество с моими постами :).


Отправлено: 21:56, 25-01-2013 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Абстрактный шаблон

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Скопируйте мне шаблон сайта или обучите как это делать и как залить шаблон ucoz? Gosha1234 Вебмастеру 4 03-01-2013 15:50
2008 R2 - Административный шаблон IE 9 для ГП jayboun Windows Server 2008/2008 R2 2 19-10-2012 17:16
Разное - Flash шаблон XuT Программирование и базы данных 0 31-01-2011 01:46
FAQ - Шаблон для Joomla Prizrak77 Сетевые технологии 0 31-12-2010 00:16
шаблон slaine Вебмастеру 5 10-12-2005 01:06




 
Переход