← All posts tagged C++

xeningem
? C++ yaml-cpp Не собирается у меня Yaml-cpp, пока немного исходники не поправишь. В MS VS (2008 Express), MinGW — всё нормально.
Короче ругается вот на это:
template <typename T, typename U>
struct is_same_type {
enum { value = false };
};

template <typename T>
struct is_same_type<T, T> {
enum { value = true };
};

template <typename T, bool check>
struct is_index_type_with_check {
enum { value = false };
};

template <> struct is_index_type_with_check<std::size_t, true> { enum { value = true }; };

#define MAKE_INDEX_TYPE(Type) \
template <> struct is_index_type_with_check<Type, is_same_type<Type, std::size_t>::value> { enum { value = true }; }

MAKE_INDEX_TYPE(int);
MAKE_INDEX_TYPE(unsigned); // вот тут говорит, что уже определено
MAKE_INDEX_TYPE(short);
MAKE_INDEX_TYPE(unsigned short);
MAKE_INDEX_TYPE(long);
MAKE_INDEX_TYPE(unsigned long);

Самое интересное. что если изменить определение is_index_type_with_check на
template <> struct is_index_type_with_check<std::size_t, false> { enum { value = true }; };
то всё работает ( и в студии, и в MinGW...)
Вопрос — почему начинает работать в RAD Studio (бывший Borland Builder)?.
p.s. Это из-за SFINAE в RAD Studio 2010, или это всё-таки карма?
xeningem
C++ programming TimeWeaver2 Дошёл до того, что при написании кода на шаблонах похоже нужны буду макросы. Однако :) Не то, чтобы я был прям очень маньяк в написании кода, но некоторые решения в последнее время меня самого повергают в недоумевающе-блаженное состояние. До тех пор пока в один прекрасный момент код не перестаёт работать.
xeningem
C++ учеба пузомерка Решил с какого-то перепуга сдать экзамен на Интуите по C++. Ну, что, начал в воскресенье, сегодня сдал экзамен :) Особо сложно было ответить на все 37 вопросов правильно, не с первого раза это удалось.
Ну, за диплом никто это считать наверное не будет, зато можно будет похвастаться (перед кем? не понятно...).
Собственно "диплом" intuit.ru
xeningem
Python C++ swig bin trouble Что за фигня? Есть dll, есть класс для работы с ней (на C++). С помощью swig генерю биндинги, устанавливаю.
Но попытка передать любой параметр заканчивается AV. При этом данные из них я могу получить (хотя и странные, к примеру — в dll в конструкторах всё зануляется, а в питоне на выходе получаю отнюдь не нулевые значения).