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

Почему GCC позволяет использовать round () в C ++ даже с флагами ansi и pedantic?
Есть ли веская причина, по которой эта программа компилируется под GCC даже с флагами -ansi и -pedantic ? #include <cmath> int main (int argc, char *argv []) { double x = 0.5; return static_cast<int>(round(x)); }...
1826 просмотров
schedule 16.05.2022

Оптимизация std::copy/memcpy/memmove
Я заглянул в GCC STL (4.6.1) и увидел, что std::copy() использует оптимизированную версию на тот случай, если встроенный __is_trivial() оценивается как true . Поскольку шаблоны std::copy() и std::reverse_copy() очень удобны для копирования...
1230 просмотров
schedule 09.06.2022

Использование boost::assign::list_of
Это компилирует: std::vector<int> value = boost::assign::list_of(1)(2); Но не это: Constructor(std::vector<int> value) { } Constructor (boost::assign::list_of(1)(2)); Есть ли однострочное решение для инициализации...
17070 просмотров
schedule 22.05.2024

Factory возвращает объекты boost::visitor
Я хочу создать фабрику посетителей, которая возвращает объект любого из этих типов: class Visitor1: public boost::static_visitor<int> { public: int operator()(int& ) const { return 1; } int operator()(bool&...
437 просмотров
schedule 08.06.2023

найти в std::vector‹std::pair›
У меня есть вектор пар. Первый в паре имеет тип std::string, а второй — тип Container. Какие удобные функции существуют в std или boost, чтобы я мог вернуть контейнер, учитывая строковое значение в качестве ключа? ОБНОВЛЕНИЕ Было отмечено,...
25975 просмотров
schedule 29.08.2022

Преобразование std::vector типа boost::variant
Как я могу реализовать приведенную ниже функцию для преобразования вектора Value в Container ? Я хочу утверждать, если не все члены values одного типа, то есть если вектор содержит смесь строк и целых чисел. Это связано с тем, что возвращаемое...
1721 просмотров
schedule 09.08.2022

Потокобезопасность Meyers Singleton с C++-98
В настоящее время у меня есть эта реализация синглтона Мейера: class ClassA { public: static ClassA& GetInstance() { static ClassA instance; return instance; } private:...
3088 просмотров

Isnan находится в пространстве имен std::? В общем, когда std:: необходим, необязателен или его следует избегать?
В Mingw 4.7.2 у меня есть библиотека, которая не компилируется из-за вызова isnan . Компилятор говорит, что "все будет хорошо", если я использую std::isnan , и действительно мне удается скомпилировать свой файл. Но если я проверю здесь (...
16925 просмотров
schedule 11.05.2023

Присвоение статическому константному члену значения, поступающего из функции (точнее, из статического метода)
Не допускается следующее ('std::numeric_limits::max()' не может появляться в константном выражении): #include <limits> struct MyStruct { private: static const unsigned int INVALID_VALUE = std::numeric_limits<unsigned...
122 просмотров
schedule 25.02.2023

Ошибка проверки типа С++
Я следовал инструкциям, которые я получил из моего последнего поста, и переписал свой код. Мой заголовочный файл #include <iostream> #include <string> #include <vector> #include <cstdio> #include <typeinfo>...
199 просмотров
schedule 30.09.2022

Перебрать std::vector в отсортированном порядке
Я получаю от API вектор Foo следующим образом: std::vector<Foo> foos; Затем я написал функцию с именем std::vector<std::string> getKeys(const std::vector<Foo>&) который перебирает контейнер и извлекает ключ типа...
4869 просмотров
schedule 17.01.2023

Можно ли использовать std::vector capacity/size/reserve для ручного управления выделением векторной памяти?
Я запускаю очень чувствительный ко времени код, и мне нужна схема, чтобы зарезервировать больше места для моих векторов в определенном месте кода, где я могу знать (приблизительно), сколько элементов будет добавлено, вместо того, чтобы std делал это...
187 просмотров
schedule 22.10.2022

Проблема с доступом к указателю на std::fstream
Не используя средства ввода-вывода С++ в течение длительного времени (вместо использования операций API C linux), я пытаюсь хотя бы ознакомиться с тем, как работает С++. Я работаю под Ubuntu 12.04., в соответствии с C++98, используя gcc -Wall,...
163 просмотров
schedule 18.09.2022

Как удалить избыточность в форматированном потоке
У меня есть следующий рабочий код, который создает форматированный вывод с использованием ofstream, однако я чувствую, что все повторяющиеся спецификаторы формата затрудняют чтение. Есть ли способ установить точность, ширину и выравнивание на...
128 просмотров
schedule 22.08.2022

Могу ли я передать функцию-член в mu::Parser::DefineFun()?
Я использую muParser для анализа математических выражений и хочу добавить в анализатор функцию, реализация которой будет предоставляться нестатической функцией-членом класса. Этот отрывок из пример программы должен дать представление о том, что...
247 просмотров
schedule 22.12.2022

Использование преобразования указателя для хранения/приведения значений: нарушаю ли я строгое правило псевдонимов?
Вопрос относится к этому сообщению . Некоторые авторитетные пользователи заявили, что следующий код нарушает строгие правила псевдонимов . #include <boost/static_assert.hpp> template <typename T> struct MyType { private:...
118 просмотров
schedule 14.01.2023

Как реализовать отображение, фильтрацию и свертывание в C++ 98
Я хочу иметь возможность сделать что-то вроде: std::list<Person> personList; std::list<Person> filteredPersonList; Person filterByAge(Person p){ if(p.age >= 18) return p; } filteredPersonList = filter(personList, filterByAge)
261 просмотров
schedule 06.09.2022

Как использовать разные функтоиды в массиве или векторе
Я написал небольшой фрагмент кода, в котором я могу вызывать функции установки и получения, упакованные в функтоид, используя шаблоны mem_fun. Теперь я хотел бы использовать этот подход поверх иерархии классов, где каждый класс может иметь геттер и...
278 просмотров
schedule 27.01.2023

Выведите тег из итератора boost::multi_index
Я хотел бы вывести тег из итератора boost::multi_index, возможно ли это? псевдокоды struct digital_base_struct { digital_base_struct(); std::string description_; //....... }; typedef...
137 просмотров
schedule 31.08.2022

интервал = интервал (); что происходит в С++98?
Пожалуйста, прочитайте вопрос полностью, прежде чем пометить его как дубликат. Заявление вроде int i=int(); большинство программистов скажут, что здесь есть инициализация значения, и i будет инициализировано значением. (0 на выходе). Но...
594 просмотров
schedule 28.02.2024