Кстати вот, напомнили. Вон там EA писали: http://www.open-std.org/jtc1/sc22/wg21/d...
-----------------
To make a list container debuggable, whereby the user can easily inspect and traverse it with a traditional debugger, we use Curiously Recurring Template Pattern like so in EASTL.
template <typename LN>
struct ListNodeBaseProxy
{
LN* mpNext;
LN* mpPrev;
};
template <typename T>
struct ListNode : public ListNodeBaseProxy< ListNode<T> >
{
T mValue;
};
template <typename T, typename Allocator>
class ListBase // Typically the list class inherits from a base class such as this.
{
public:
typedef T value_type;
typedef ListNode<T> node_type;
typedef ListNodeBaseProxy< ListNode<T> > base_node_type;
protected:
base_node_type mNode;
. . .
};
------------------------
CRTP я вроде как бы понял, наверное. Им делают статический полиморфизм... когда классов-наследников несколько. Но как это работает в их примере, и тем более как это помогает дебагеру — совсем никак не вкурю. Дискас.
ulidtko
23.01.2012 22:30 уважением
Do you really want to delete ?
ой не напоминайте мне про еастл, опять вспомню и заплачу ещё
?
https://twitter.com/#!/zeuxcg/statuses/2...
https://twitter.com/#!/zeuxcg/status/275...
и т.д.
твиттеропетушней запахло же :)
?
Твиттер — голые выхлопы, нужно же кидать в неревующих годными статейками с цопипастой и вставками кода, имхо. Как-то благодатней выглядит же.
Ну-ну, а один мой знакомый говорил что тут как раз случай: "не по словам, а по делам". Почитай хоть мельком, что он успел сделать.
и бтв там есть вставки кода
Already done! Был бы чистым игродевом — ок, но писатели XML парсеров меня настораживают.
Парсеров на плюсах, да.
он чистых игродев, пуги старое хоби
а на чём надо?
Уже ни на чем, в том и дело, к тому же дико избыточный формат.
http://code.google.com/p/pugixml/updates...
> старое
> Jan 16, 2012
Ну так стандарт в игродеве, что поделать, коллада и все дела. Так что быстрый хмл парсер в деббаг билде вещь необходимая.
ну так суппортит чё
Да, по сравнению со студийными визуализаторами дебаггера сабж посасывает, кекеке.
CRTP я бы назвал "статическим декоратором" (по аналогии с Паттернами), по крайней мере на такие мысли наталкивает тот же class T : enable_shared_from_this<T>;