0
ответов

Ограничения параметров рефлексивного типа: X , где T: X - какие-нибудь более простые альтернативы?

Время от времени я усложняю простой интерфейс, добавляя саморефлексный («рефлексивный») тип ограничение параметра к нему. Например, я мог бы включить это: interface ICloneable {...
вопрос задан: 15 January 2012 10:06
0
ответов

Как получить размер аргумента шаблона при использовании CRTP?

В VC ++ 10 следующий пример не работает с ошибкой C2027: «использование неопределенного типа 'X' ". Однако g ++ 4.6 прекрасно его компилирует. шаблон <класс T> класс C {статическая константа size_t size = sizeof (T); ...
вопрос задан: 17 December 2011 13:07
0
ответов

CRTP с защищенным производным членом

В шаблоне CRTP мы сталкиваемся с проблемами, если хотим сохранить функцию реализации в производном классе как защищенную. . Мы должны либо объявить базовый класс как друг производного класса, либо ...
вопрос задан: 15 December 2011 17:28
0
ответов

crtp и видимость типов

У меня есть головоломка, которую я пытаюсь решить, и в основном она сводится к следующему примеру: template struct A { typedef typename CT::VALUE_T FOO; // FOO - это ...
вопрос задан: 6 December 2011 16:32
0
ответов

C ++ CRTP и доступ к производным вложенным определениям типов из base

edit: Я помещу здесь ссылку на github, когда закончу изменять свой дизайн для всех, кому это интересно. Предыстория Я заменяю boost :: intrusive, intrusive_set моей собственной реализацией как 64-битной ...
вопрос задан: 13 November 2011 19:24
0
ответов

Использование decltype в позднем указанном возврате в базовом классе CRTP

Я пытаюсь использовать decltype в позднем заданном возврате функция-член в базовом классе CRTP, и это ошибка: недопустимое использование неполного типа const struct AnyOp
вопрос задан: 2 October 2011 10:44
0
ответов

CRTP не работает с decltype

шаблоном struct A {auto func () -> decltype (T :: func ()) {return T :: func (); } decltype (T :: func ()) {return T :: func (); } decltype (T :: func ()) {return T :: func (); } }; class B: public A {void func () {} }; Мне это кажется д
вопрос задан: 2 October 2011 10:43
0
ответов

gjenbruk av kopi-og-bytt-idiomet

Jeg prøver å sette kopi-og-bytte-idiomet inn i et gjenbrukbart mixin: mal struct copy_and_swap {Derived & operator = (Derived copy) {Derived * derivated = ...
вопрос задан: 16 August 2011 14:48
0
ответов

Как получить определение универсального типа для типа CRTP

Учитывая следующий тип CRTP в C #: открытый абстрактный класс DataProviderBase , где TProvider: DataProviderBase {} Как мне получить определение его универсального типа ...
вопрос задан: 21 July 2011 22:13
0
ответов

Как реализовать во время компиляции проверку допустимости понижающего преобразования в CRTP?

У меня есть старый добрый CRPT (пожалуйста, не отвлекайтесь на ограничения доступа - вопрос в не о них): template class Base {void MethodToOverride () {...
вопрос задан: 6 May 2011 07:20
0
ответов

Нет шаблона класса с именем X в шаблонном классе

] При попытке скомпилировать этот (похожий на CRTP) код с помощью GCC 4.6.0: template