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

Пересмотр стандарта С++ 1998 года, ISO/IEC 14882: 1998.
2 отв.

По умолчанию, значение и нуль

Я очень смущен насчет инициализации значений и дефолтов и нулей. и особенно когда они пинают для разных стандартов С++ 03 и С++ 11 (и С++ 14). Я цитирую и пытаюсь продлить действительно хороший ответ Value-/Default-/Zero-Init С++ 98 и С++ 03, чтобы ...
21 апр. '15 в 10:44
4 отв.

Интерфейс для возврата связки значений

У меня есть функция, которая принимает число и возвращается к тому множеству вещей (скажем, ints). Какой самый чистый интерфейс? Некоторые мысли: Верните a vector<int>. Вектор будет скопирован несколько раз, что неэффективно. Верните a vec...
09 мая '13 в 20:19
1 отв.

Почему std:: list больше на С++ 11?

с помощью этого кода: #include <iostream> #include <list> int main() { std::cout << sizeof(std::list<void*>) << std::endl; }; Мне удалось заметить, что на GCC 4.7 размер std::list<void*> на С++ 98 равен 16...
08 апр. '12 в 21:01
1 отв.

Каков правильный способ инициализации статических данных в С++ (98, 11 и 14)

Каков правильный способ инициализации элементов данных static на С++? Меня также интересует, как он изменился с С++ 98, на С++ 11 до С++ 14. Вот пример: // bufferedOutput.h class BufferedOutput { // Static member declaration. static long bytecou...
30 окт. '14 в 12:04
3 отв.

Почему запись в объект с временным строковым потоком только печатает адреса объектов?

Следующий фрагмент - это упрощенная версия используемого регистратора. Он расширяет std::ostringstream и может быть заполнен с помощью << -оператора. После уничтожения все содержимое записывается в std::cout. Написание (<<) непосредстве...
25 апр. '15 в 2:18
3 отв.

С++ array zero-initialization: Это ошибка, или это правильно?

Примечание. Мы говорим о (предположительно) компиляторах, совместимых с С++ 98, здесь. Это не вопрос С++ 11. У нас странное поведение в одном из наших компиляторов, и мы не уверены, что это нормально или это ошибка компилятора: // This struct has...
19 авг. '13 в 10:58
1 отв.

"Константные выражения" до С++ 11

Ключевое слово constexpr было введено в С++ 11, поскольку (я думаю) была соответствующей идеей "постоянных выражений". Однако эта концепция неявно присутствует в С++ 98/С++ 03, так как объявления массива требуют постоянного выражения: // valid: int...
24 сент. '14 в 22:28
4 отв.

Временная сложность удаления элементов в векторах и deque

Я прочитал, что временная сложность добавления элементов до конца std::vector является амортизируемой константой, а вставка элементов в верхней и нижней части std::deque является постоянной. Поскольку оба этих контейнера имеют итератор с произвольны...
01 февр. '15 в 21:45
1 отв.

С++ 11 Исключительный деструктор позволяет бросить сейчас?

любая идея, почему virtual ~ exception() throw() находится в С++ 98, но virtual ~ exception() находится в С++ 11? Какое дизайнерское решение разрешает С++ 11 бросать деструктор класса exception? Из здесь: С++ 98: class exception { public: exce...
14 мая '13 в 13:24
3 отв.

шаблон магии для обертывания C обратных вызовов, которые принимают параметры void *?

Скажем, я использую C API, который позволяет вам регистрировать обратные вызовы, которые принимают закрытие void*: void register_callback(void (*func)(void*), void *closure); В С++ хорошо иметь более сильные типы, чем void*, поэтому я хочу созда...
17 мая '13 в 9:14
1 отв.

Является ли инициализация значения частью стандарта С++ 98? Если нет, то почему он был добавлен в стандарт С++ 03?

Приветствия и hth. - Alf сделал комментарий в ответе , что инициализация значения, возможно, является новой функцией С++ 03 по сравнению с С++ 98. Интересно, что он имел в виду. Является инициализация значения частью С++ 98? Является ли это в концеп...
08 дек. '14 в 3:38
1 отв.

Как создать псевдоним для нескольких потоков?

Есть ли способ создать сокращенный псевдоним для следующей строки в С++ 98? std::precision(3) << std::fixed И затем используйте псевдоним следующим образом: std::cout << alias << 3.1415926 << std::endl;
03 окт. '16 в 17:07
6 отв.

Инициализация контейнера в С++ 98

Мне нужно построить упорядоченный контейнер (который должен быть итерируем) со следующим правилом: Если условие истинно, контейнер {1,0}, иначе он {0,1} У меня есть следующий код, но я не считаю его "элегантным": vector<int> orderedSid...
30 июня '17 в 10:59
2 отв.

Использование 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)); Есть ли однострочное решение для инициализации вектора, переда...
08 нояб. '12 в 11:34
4 отв.

найти в std::vector <std:: pair>

У меня есть вектор пар. Первый в паре имеет тип std::string, а второй - тип Container. Какая удобная функциональность существует в std или boost, чтобы я мог вернуть контейнер, учитывая строковое значение как ключ? UPDATE Было отмечено, что я м...
19 марта '13 в 15:31