9
ответов

Что лучший способ состоит в том, чтобы реализовать интеллектуальные указатели в C++?

Я оценивал различные реализации интеллектуального указателя (ничего себе, существует МНОГО там), и мне кажется, что большинство из них может быть категоризировано в две широких классификации: 1) Эта категория...
вопрос задан: 16 August 2019 17:44
9
ответов

Назначение последовательностей триграфа в C ++?

В соответствии со стандартом C ++ '03 2.3 / 1: перед любой другой обработкой каждое вхождение одной из следующих последовательностей из трех символов («последовательности триграфа») заменяется одним ...
вопрос задан: 2 September 2016 07:07
9
ответов

Почему использование = для инициализации типа примитива в C++?

Где я работаю, люди главным образом думают, что объекты лучше всего инициализируются с помощью конструкции в стиле С++ (с круглыми скобками), тогда как типы примитивов должны быть инициализированы с = оператор: станд.:: строка...
вопрос задан: 29 August 2015 11:19
8
ответов

Как я могу передать функцию членства класса как обратный вызов?

Я использую API, который требует, чтобы я передал указатель функции как обратный вызов. Я пытаюсь использовать этот API от своего класса, но я получаю ошибки компиляции. Вот то, что я сделал от своего конструктора:...
вопрос задан: 4 January 2019 23:35
8
ответов

Какое безопасное с точки зрения типов перечисление в C++ Вы Используете?

Это общеизвестно, что встроенные перечисления в C++ не безопасны с точки зрения типов. Я задавался вопросом, какие классы, реализовывая безопасные с точки зрения типов перечисления используются там... Я сам использую следующий "велосипед", но эт
вопрос задан: 16 June 2014 20:37
8
ответов

инициализируйте массив константы в инициализаторе класса в C++

У меня есть следующий класс в C++: класс a {b[2] интервала константы;//другой материал следует//и здесь является конструктором (пустота);} вопрос, как я инициализирую b в...
вопрос задан: 7 April 2013 12:20
7
ответов

Каков C++ 03 модели памяти для параллелизма?

Какова модель памяти для параллелизма в C++ 03? (И, C++ 11 изменяет модель памяти для поддержки параллелизма лучше?)
вопрос задан: 24 March 2014 17:49
5
ответов

Ориентированные на многопотоковое исполнение статические переменные без mutexing?

Я не забываю читать, что статические переменные, объявленные в методах, не ориентированы на многопотоковое исполнение. (См. Что относительно одиночного элемента Meyer's? как упомянуто Todd Gardner) Собака* MyClass:: BadMethod () {статическая собака Собаки
вопрос задан: 23 May 2017 12:09
5
ответов

Там какая-либо причина состоит в том, чтобы использовать 'автоматическое' ключевое слово в C++ 03?

Обратите внимание, что этот вопрос был первоначально отправлен в 2009, прежде чем C++ 11 был ратифицирован и прежде чем значение автоматического ключевого слова было решительно изменено. Предоставленные ответы принадлежат только C++ 03 значения...
вопрос задан: 3 January 2017 07:11
5
ответов

Делает “&s [0]” точка к непрерывным символам в станд.:: строка?

Я делаю некоторые работы по техническому обслуживанию и натыкался на что-то как следующее: станд.:: строка s; s.resize (сила);//сила является size_t с длиной струны до в нем. memcpy (&s [0]...
вопрос задан: 18 February 2014 19:03
5
ответов

Это разумный для использования станд.:: basic_string <t> как непрерывный буфер при предназначении для C++ 03?

Я знаю что в C++ 03, технически станд.:: шаблон basic_string не требуется, чтобы иметь непрерывную память. Однако мне любопытно, сколько реализаций существует для современных компиляторов, которые на самом деле берут...
вопрос задан: 8 November 2012 18:04
3
ответа

Могут ли виртуальные функции иметь параметры по умолчанию?

Если я объявляю базовый класс (или интерфейсный класс) и указываю значение по умолчанию для одного или нескольких его параметров, должны ли производные классы указывать те же значения по умолчанию, а если нет, то какие значения по умолчанию будут ...
вопрос задан: 27 August 2013 15:42
2
ответа

Почему PRIu64 не работает в этом коде?

Согласно этому ответу, я попытался напечатать uint64_t, но он выдает мне ошибку: error: ожидаемый ``) 'перед' PRIu64 'Ниже приведен минимальный код, показывающий, что я пытаюсь сделать: #define ...
вопрос задан: 23 May 2017 11:47
1
ответ

Как правильно заменить sprintf_s на sprintf в C ++ 03?

sprintf_sis - реализация Microsoft функции sprintf, в которой они исправили ошибку, добавив аргумент для получения граничного значения, для которого функция ограничена для записи. Эквивалент был ...
вопрос задан: 17 January 2019 15:04
1
ответ

Действительно ли тесты данных Boost.Test требуют C ++ 11?

Я работаю в конкретной корпоративной среде, и на данный момент нет инфраструктуры C ++ 11. Недавно я начал писать юнит-тесты и решил использовать каркас Boost.Test, так как Boost известен ...
вопрос задан: 15 January 2019 17:03
1
ответ

Perfect Forwarding в C ++ 03

Если у вас есть этот шаблон функции f (T &); А затем попытайтесь вызвать его с помощью, скажем, значения r, такого как f (1); Почему T просто не выводится как const int, делая аргумент a ...
вопрос задан: 17 November 2011 20:25
0
ответов

Получение типа члена

ПРИМЕЧАНИЕ. Этот вопрос изначально задавали еще в 2012 году. До того, как спецификатор decltype был полностью реализован какими-либо крупными компиляторами. Вы не должны смотреть на этот код, если только у вас нет ...
вопрос задан: 13 February 2018 18:59
0
ответов

В каких версиях стандарта C++ поведение «(i+=10)+=10» не определено?

В C++ имеет ли следующее поведение undefined: int i = 0; (i+=10)+=10; В комментариях к моему ответу на вопрос «Каков результат += в C и C++» по этому поводу были некоторые дебаты? Тонкость...
вопрос задан: 23 May 2017 12:34
0
ответов

Почему встроенные функции имеют внешнюю связь по умолчанию?

В стандарте сказано, что при объявлении встроенного void foo (); что foo - встроенная функция с внешней связью (потому что по умолчанию все объявления функций имеют внешнюю связь). Это ...
вопрос задан: 23 May 2017 12:24
0
ответов

«Backporting» nullptr в C ++ - программы до C ++ 0x

Примерно так, как следует из названия. Хотя я еще не использую C ++ 0x, я хотел бы быть готовым к тому, когда это произойдет, и я также хотел бы уменьшить объем кода, который мне нужно переписать, чтобы использовать некоторые из его ...
вопрос задан: 23 May 2017 12:10
0
ответов

Является ли C ++ 03 новой версией стандарта C ++ или просто техническим исправлением (TC) C ++ 98?

Я почти уверен, что где-то читал авторитетный источник (я считаю, что был на страницах WG21), что C ++ 03 не был техническим исправлением C ++ 98, но что это была новая версия стандарта C ++ ...
вопрос задан: 23 May 2017 11:44
0
ответов

Как определить nullptr для поддержки как C++03, так и C++11? [дубликат]

Возможный дубликат :«Бэкпорт» nullptr на C++ -до -программы на C++0x Как определить nullptr для поддержки как C++03, так и C++11? Компилируется ли приведенный ниже код как с C++03, так и с C++11...
вопрос задан: 23 May 2017 10:34
0
ответов

C++03. Тест на rvalue-vs-lvalue во время компиляции, а не только во время выполнения

В C++03, Boost's Foreach, используя эту интересную технику, может определить во время выполнения, является ли выражение lvalue или rvalue. (Я нашел это через этот вопрос на StackOverflow: Rvalues in C++03 ) ...
вопрос задан: 23 May 2017 10:28
0
ответов

Какие различия, если они есть, между C ++ 03 и C ++ 11 могут быть обнаружены во время выполнения?

Можно написать функцию, которая при компиляции с помощью компилятора C будет вернет 0, а при компиляции компилятором C ++ вернет 1 (тривиальное решение с #ifdef __cplusplus не ...
вопрос задан: 9 December 2016 04:41
0
ответов

Инициализация объединения в C++ и C

Я создал рабочую библиотеку C, которая использует константы в файлах заголовков, определенных как typedef struct Y { union { struct bit _field bits; uint8 _t raw[4]; } ИКС; } Информация о карте; статическая константа CardInfo...
вопрос задан: 12 August 2016 01:29
0
ответов

В чем разница в неопределенном поведении между C ++ 03 и C ++ 11?

Новый стандарт имеет неопределенное поведение, отличное от старого. Новые правила последовательности, например, означают, что некоторые арифметические операции, которые раньше были неопределенными (по таким причинам, как множественные ...
вопрос задан: 13 May 2016 10:22
0
ответов

Использование ускорения для создания лямбда-функции, которая всегда возвращает истину

Предположим, у меня есть функция, которая принимает некоторую форму предиката: void Foo (boost :: function предикат); Если я хочу вызвать его с предикатом, который всегда возвращает истину, я могу ...
вопрос задан: 26 November 2015 10:58
0
ответов

Передача функции-члена в for_each в C ++ 03 (без повышения, без C ++ 11)

"Решение" ниже компилируется, но это не то, что я хочу. Я хотел бы передать функцию-член put в for_each, а не * this. Использование ускорения НЕ вариант. Можно ли это решить в C ++ 03? # ...
вопрос задан: 28 January 2015 11:20
0
ответов

Какие ограничения ISO C ++ 03 накладывает на структуры, определенные в области видимости функции?

Нам не разрешено определять структуру функтора внутри функции, потому что нельзя использовать функцию объявленные структуры при создании экземпляров шаблонов функций. Есть ли какие-нибудь другие важные ...
вопрос задан: 26 November 2013 21:48
0
ответов

BOOST_FOREACH входит в бесконечный цикл при использовании «break»?

Следующий сегмент кода входит в бесконечный цикл внутри BOOST_FOREACH, и я не могу понять, почему. Насколько я могу скажите из документации Boost, можно использовать "break" ...
вопрос задан: 15 May 2012 15:51