Вопросы по теме '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 просмотров
schedule
24.06.2023
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