Вопросы по теме 'c++03'

Простые лямбда-выражения C ++ 03 без повышения и т. Д.
Не могли бы вы подсказать, как реализовать базовые лямбда-выражения в C ++ 03 без специальных библиотек простым, элегантным и умным способом? Они должны позволять делать что-то вроде этого: for_each(some_vector.begin(), some_vector.end(), _first...
1313 просмотров
schedule 07.09.2021

Союз, содержащий летучие структуры
Это похоже на структуры POD, содержащие постоянный член , но в некотором роде наоборот. #include <iostream> struct A { int a; }; union U { volatile A a; long b; }; int main() { U u1; U u2; u1.a.a = 12; u2 =...
769 просмотров
schedule 10.11.2021

Можно ли каким-то образом обеспечить эквивалент приведения типа operator bool вне определения класса?
У меня есть шаблонный код C ++ - 03, который включает фрагмент, который я хотел бы написать примерно так: template <typeName optType> std::string example(optType &origVal) { return bool(origVal) ? "enabled" : "disabled"; } Однако...
423 просмотров

Поддержка std :: set в java swig
В моем java-коде я хотел бы вызвать конструктор по умолчанию std::set и вставить, например. следующий код на C ++: struct foo; foo bar(); std::set<foo> toto; toto.insert(b); Swig обеспечивает поддержку различных контейнеров STL для...
677 просмотров
schedule 21.09.2021

C ++ Альтернатива шаблонному элементу данных
Если у меня есть класс DataManager : class DataManager { public: int getRecordInt( size_t i ) const; std::string getRecordString( size_t i ) const; private: std::vector<int> _vInt; std::vector<std::string> _vString; }...
191 просмотров

Законно ли иметь статически выделенные ссылки чистого виртуального родительского класса на статически выделенные объекты дочернего класса?
ОБНОВЛЕНИЕ: я не прошу людей попробовать это и посмотреть, работает ли для них код. Я спрашиваю, является ли шаблон кода допустимым для C ++, независимо от того, работает ли он для вас. Я исследую то, что я считаю ошибкой в ​​компиляторе IAR C...
74 просмотров
schedule 24.10.2021

MATLAB R2016b - MEX не может скомпилировать код C ++
Мой последний пост был загроможден большим количеством информации. Частично это была проблема, которая, надеюсь, сама по себе с дополнительной информацией будет иметь больше смысла. Я пытаюсь использовать mex в MATLAB R2016b для компиляции...
520 просмотров
schedule 14.09.2021

Может ли конструктор копирования быть определен в базовом классе и по-прежнему обрабатывать обстоятельства производного класса?
У меня есть структура классов, как показано ниже: class P { public: virtual std::auto_ptr<P> clone() const=0; }; class A : public P { public: std::auto_ptr<P> clone() const { return...
64 просмотров
schedule 23.11.2021

В чем разница в неопределенном поведении между С++ 03 и С++ 11?
Новый стандарт имеет поведение undefined, отличное от старого. Новые правила последовательности, например, означают, что некоторые арифметические операции, которые раньше были неопределенными (по таким причинам, как множественная запись между точками...
532 просмотров
schedule 01.03.2022

Используя boost::mpl, как я могу получить, сколько классов шаблонов не пусто, и вызвать какой-нибудь макрос с этим номером?
Я хочу вызвать макрос с некоторыми аргументами в зависимости от результата boost::mpl::eval_if (или аналогичной функции), который мог бы дать, сколько аргументов шаблона не пусто. Скажем, у нас есть псевдокод, подобный следующему: struct...
423 просмотров

Гарантируется ли выравнивание элементов POD-структуры или стандартного типа макета в соответствии с их требованиями к выравниванию?
Учитывая POD-структуру (в C ++ 03) или стандартный тип макета (в C ++ 11) со всеми членами, имеющими фундаментальное требование выравнивания, верно ли, что каждый член гарантированно выровнен в соответствии с его требованием выравнивания ? Другими...
902 просмотров

Вперед объявить typedef
У меня есть большой файл заголовка (~ 10000 строк), который автоматически генерируется скриптом / программой вне моего контроля. Чтобы не включать этот файл в объявление моего класса, я заранее объявляю несколько необходимых мне типов:...
4021 просмотров
schedule 09.04.2022

Преобразование строки в int в C ++ 03
Возможный дубликат: Как преобразовать строку в int в C ++? В C ++ 03 существует множество способов преобразовать строку в int. Лучшее, что я нашел до сих пор, это: string text; cin>>text; int converted; if (...
1362 просмотров
schedule 17.04.2022

Условное наследование от любого из двух классов
Возможный дубликат: Динамическое создание структур во время компиляции Теперь я сталкиваюсь с ситуацией, когда я хочу, чтобы производный класс наследовал либо от Base1 , либо от Base2 в зависимости от условия (в С++ 03). Это...
1678 просмотров
schedule 15.04.2022

Определенный случай инициализации значения в С++ 03 не вызывает конструктор?
На самом деле я понял этот вопрос, когда обсуждал другой мой вопрос ( Член не обнулено, ошибка clang++? ). Этот вопрос касается инициализации значения С++ 11, но когда я увидел правило инициализации значения С++ 03, которое кто-то опубликовал там, я...
104 просмотров
schedule 29.04.2022

Увеличьте проблему с shared_ptr с помощью библиотек TR1
class MyClass{ public: MyClass() {} virtual ~MyClass() {} }; extern "C" int foo(int tryNumber) { std::tr1::shared_ptr<MyClass> myClass(new MyClass()); std::cout << "Object has been created " << tryNumber <<...
108 просмотров
schedule 18.05.2022

Замена void в качестве параметра шаблонного метода
В моем коде у меня есть класс, который регистрирует методы других классов: #include <iostream> using namespace std; template< typename C> class Reg { public: template< typename R, typename A> void register_f(...
298 просмотров

Библиотека C++03 с исходным кодом C++11
Если у меня есть библиотека, написанная на C++03, и я компилирую ее в статическую библиотеку, могу ли я использовать ее в C++11? Также возможно обратное (статическая библиотека С++ 11 с С++ 03). Обновление: Я использую компилятор clang или LLVM.
3219 просмотров
schedule 24.05.2022

Зачем реализовывать swap() как не бросающий
Я понимаю, почему иногда рекомендуется реализовать собственную функцию swap() для данного класса. Например, если у нас есть класс, использующий идиому pimpl , мы, вероятно, захотим определить собственный конструктор копирования , чтобы он...
428 просмотров
schedule 10.06.2022

оператор ‹‹ не соответствует
#include<iostream> #include<set> #include<unordered_map> using namespace std; typedef long Node; typedef unordered_map<Node, set<Node> > Dothi; Dothi g; while (n--) { Node u, i; int choose; cin >>...
145 просмотров
schedule 26.06.2022