0
ответов

Неопределенные точки поведения и последовательности

Что такое «точки последовательности»? Какова связь между неопределенным поведением и точками последовательности? Я часто использую смешные и запутанные выражения, такие как [++ i] = i;, чтобы чувствовать себя лучше. Зачем ...
вопрос задан: 23 May 2017 12:10
0
ответов

Уничтожение объектов в C ++

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

Как мне написать пользовательские операторы new и delete, соответствующие стандарту ISO C ++?

Как мне написать пользовательские операторы new и delete, соответствующие стандарту ISO C ++? Это продолжение раздела «Перегрузка нового» и «Удалить» в чрезвычайно ярких часто задаваемых вопросах по C ++, «Перегрузка операторов» и ...
вопрос задан: 23 May 2017 12:09
0
ответов

Какие реализации C ++ Smart Pointer доступны?

Сравнения, плюсы, минусы и когда использовать? Это ответвление от ветки сборки мусора, где то, что я считал простым ответом, породило множество комментариев о каком-то конкретном умном указателе ...
вопрос задан: 23 May 2017 12:02
0
ответов

Обоснование того, что некоторые операторы должны быть членами

В C ++ есть 4 оператора, которые могут быть перегружены, но не могут быть перегружены как автономные (также не являющиеся членами, автономные ) функции. Это следующие операторы: оператор = оператор () оператор -> ...
вопрос задан: 23 May 2017 11:59
0
ответов

Как я могу использовать массивы в C ++?

C ++ унаследовал массивы от C, где они используются практически везде. C ++ предоставляет абстракции, которые проще в использовании и менее подвержены ошибкам (std :: vector < T > начиная с C ++ 98 и std :: array < T, n > ...
вопрос задан: 23 May 2017 11:54
0
ответов

Как заставить IOStream работать лучше?

Большинство пользователей C ++, изучивших C, предпочитают использовать семейство функций printf / scanf, даже когда они кодируют на C ++. Хотя я признаю, что считаю интерфейс намного лучше (особенно формат, подобный POSIX ...
вопрос задан: 23 May 2017 11:54
0
ответов

Преобразование из Derived ** в Base **

Я читал это и, к сожалению, не мог понять, почему компилятор не позволяет преобразование из Derived ** в Base **. Также я видел это, которое дает не больше информации, чем ...
вопрос задан: 23 May 2017 11:47
0
ответов

Что означает наличие неопределенной ссылки на статический член?

Я только что написал класс с некоторыми статическими элементами данных, но теперь я получаю ошибки о «неопределенных ссылках». Почему это не работает? Что я делаю не так? (Примечание: это должна быть запись в ...
вопрос задан: 23 May 2017 11:46
0
ответов

Является ли идиома safe-bool устаревшей в C ++ 11?

Этот ответ @R. Мартиньо Фернандес показывает, что идиома safe-bool явно устарела в C ++ 11, так как ее можно заменить простым явным оператором bool () const; по стандарту ...
вопрос задан: 23 May 2017 10:31
0
ответов

Какой тип указателя мне использовать, когда?

Итак, когда я в последний раз писал на C++, std::auto_ptr был всем доступным в std lib, а boost::shared_ptr был в тренде. Я никогда не рассматривал другие типы умных указателей boost ...
вопрос задан: 23 May 2017 02:26
0
ответов

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

Переходя от других языков, производных от C (таких как Java или C #) к C ++, сначала очень сбивает с толку то, что C ++ имеет три способа обращения к членам класса: a :: b , ab и a-> b. Когда я использую какой из ...
вопрос задан: 23 May 2017 02:10
0
ответов

Что такое необычно повторяющийся шаблон шаблона (CRTP)?

Не обращаясь к книге, может ли кто-нибудь дать хорошее объяснение CRTP с примером кода?
вопрос задан: 4 January 2017 22:55
0
ответов

Почему мне нужно обращаться к членам базового класса шаблона через указатель this?

Если бы классы ниже не были шаблонами, я мог бы просто иметь x в производном классе. Однако в приведенном ниже коде я должен использовать this-> x. Почему? шаблон class base {protected: ...
вопрос задан: 15 June 2016 04:13
0
ответов

Другой результат с плавающей запятой при включенной оптимизации - ошибка компилятора?

Приведенный ниже код работает в Visual Studio 2008 с оптимизацией и без нее. Но работает только на g ++ без оптимизации (O0). #include # include # include ...
вопрос задан: 17 February 2016 17:43
0
ответов

Допустимые выражения для аргументов функции по умолчанию

Каковы все возможные типы допустимых выражений для аргумента по умолчанию в функции или функции-члене?
вопрос задан: 6 October 2015 00:24
0
ответов

Что такое «ссылка rvalue для * this»?

На странице состояния clang C ++ 11 натолкнулся на предложение под названием «ссылка rvalue для * this». Я довольно много читал о ссылках на rvalue и понял их, но не думаю, что знаю об этом. Я также ...
вопрос задан: 13 May 2014 05:50
0
ответов

Как эффективно выбрать контейнер стандартной библиотеки в C ++ 11?

Есть хорошо известное изображение (шпаргалка) под названием «Выбор контейнера C ++». Это блок-схема, чтобы выбрать лучший контейнер для желаемого использования. Кто-нибудь знает, есть ли уже версия на C ++ 11? ...
вопрос задан: 4 April 2014 23:27
0
ответов

Почему `std :: move` называется` std :: move`?

Функция std :: move (x) в C ++ 11 вообще ничего не перемещает. Это просто приведение к r-значению. Почему это было сделано? Разве это не вводит в заблуждение?
вопрос задан: 26 January 2014 07:11
0
ответов

Перегрузка операторов доступа к членам ->, .* (C++)

Я понимаю большинство операторов перегрузки, за исключением операторов доступа к членам ->, .*, ->* и др. В частности, что передается этим операторным функциям и что должно быть возвращено?...
вопрос задан: 4 January 2014 07:05
0
ответов

Что означает T & amp; (двойной амперсанд) значит в С ++ 11?

Я изучил некоторые из новых функций C ++ 11, и одна из них я заметил, это двойной амперсанд в объявлении переменных, таких как T & amp; & amp; вар. Для начала, как зовут этого зверя? Хотелось бы ...
вопрос задан: 4 December 2013 22:33
0
ответов

Какой синтаксический анализатор XML мне следует использовать в C ++? [закрыто]

У меня есть XML-документы, которые мне нужно проанализировать и / или мне нужно создать XML-документы и записать их в текст (файлы или память). Поскольку в стандартной библиотеке C ++ библиотеки для этого нет, то что ...
вопрос задан: 3 June 2013 20:33
0
ответов

Почему члены моей структуры не инициализируются должным образом с помощью `{}`? [Дубликат]

У меня был следующий код: #include struct T {int a, b, c; }; int main () {T t = {0}; std :: cout << t.a << ',' << t.b << ',' << t.c << '\ ...
вопрос задан: 10 February 2013 23:55
0
ответов

, Что происходит, когда исключение идет необработанное в многопоточном C++ 11 программ?

, Если у меня есть C++, 11 программ, выполняющих два потока и одного из них, выдают необработанное исключение, что происходит? Вся программа умрет пламенной смертью? Будет поток, где исключение выдается, умирают...
вопрос задан: 17 December 2012 19:12
0
ответов

Передача общих указателей в качестве аргументов

Если я объявляю объект, заключенный в общий указатель: std::shared_ptr myClassObject(new myClass()); затем я хотел передать его как аргумент методу: DoSomething(myClassObject); //...
вопрос задан: 4 August 2012 03:18
0
ответов

Почему использование оператора 'new' приводит к утечке памяти?

Сначала я изучал C#, а теперь начинаю с C++. Как я понимаю, оператор new в C++ не похож на тот, что в C#. Не могли бы вы объяснить причину утечки памяти в этом примере кода? class A { ....
вопрос задан: 19 July 2012 22:10
0
ответов

How many versions of the C++ Standards are there?

In C there's C89, C99, and C11; what about C++? Is there any upgrade since it came out?
вопрос задан: 28 February 2012 22:58
0
ответов

Что такое лямбда-выражение в C ++ 11?

Что такое лямбда-выражение в C ++ 11? Когда я буду использовать один? Какой класс проблемы они решают, что было невозможно до их введения? Несколько примеров и вариантов использования будут полезны.
вопрос задан: 2 November 2011 21:12
0
ответов

What is the difference between the standard library and the standard template library?

I keep seeing reference to both the C++ standard Library and the C++ Standard Template Library (STL). What is the difference between them? Wikipedia mentions that they share some headers but that's ...
вопрос задан: 6 May 2011 08:46
0
ответов

по-видимому, одни и те же коммиты дают разные sha1, почему?

После перезаписи истории поддеревьев из репозитория с помощью моего скрипта я сравнил его с тем, что будет делать фильтр git- ветвь ... на том же поддереве. Я вижу, что первоначальные коммиты отличаются ...
вопрос задан: 14 April 2011 18:29