Я видел, что это утверждало несколько раз теперь, когда следующий код не позволяется Стандартом C++: международный массив [5]; интервал *array_begin = &array [0]; интервал *array_end = &array[5]; &array[5]...
Примером неуказанного поведения на языке C является порядок оценки аргументов функции. Это могло бы быть слева направо или справа налево, Вы просто не знаете. Это влияло бы как нечто (...
К чему привел бы этот оператор? освободите *p = malloc (sizeof (пусто));Править: расширение вопроса. Если sizeof (пусто) уступает 1 в компиляторе GCC, то 1 байт памяти выделяется и указатель p...
В C ++ мы используем double colon (: :) для доступа к членам пространства имен, используйте dot (.) Для доступа к членам класса / структуры и используйте стрелку (- & gt;) для доступа к элементам класса / структуры с помощью указателя. Разве это не было
Можно ли удалить объект std :: function из функции, вызываемой ее оператором ()? Например: #include & lt; functional & gt; #include & lt; iostream & gt; int main () {std :: function & lt; void () & ...
Как часть ответа на другой вопрос, я столкнулся с частью кода как это, которое gcc компилирует без жалобы. структура определения типа {структура xyz *z;} xyz; международное основное (пустота) {возвращается 0;}...
Я могу определить целочисленный литерал типа, неподписанного длинный следующим образом: константа неподписанный долгий пример = 9UL; Как я делаю аналогично для неподписанного символа? константа неподписанный символьный пример = 9U?; Это необходимо...
Для целей этого вопроса меня интересует только C ++, совместимый со стандартами, а не C или C ++ 0x, и не детали, специфичные для реализации. Время от времени возникают вопросы, касающиеся ...
Каковы действительно действительные подписи для основной функции в C? Я знаю: международное основное (интервал argc, символ *argv []) там другие допустимые?
В настоящее время я использую следующий шаблон функции для подавления предупреждений неиспользуемой переменной: шаблон <имя типа T> освобождает неиспользованный (T константа, и) {/* ничего Не Делают. */} Однако при портировании на...
Несколько дней назад были дискуссией здесь о том, вызываю ли выражение i = ++ я + 1 UB (Undefined Behavior) или нет. Наконец заключение было сделано этим, оно вызывает UB как значение 'меня'...
Каково обоснование C ++ 11, запрещающего контейнеры элементов const? Я имею в виду следующее сообщение об ошибке, которое вы получаете, если вы определяете, например, вектор элементов const: ...
У меня есть перечисление в пространстве имен, и я хотел бы использовать его, как будто это было в другом пространстве имен. Интуитивно, я полагал, что мог использовать 'использование' или 'определение типа' для выполнения этого, но ни один на самом деле н
В C ++, по крайней мере, в GCC и Clang, выровненный тип, встроенный в контейнер (std :: vector), по-видимому, обрабатывается по-разному в зависимости от того, является ли тип переопределенной структурой или over -...
У меня есть структура, как показано ниже. struct result {int a; int b; int c; int d; } и союз, как показано ниже. union convert {int arr [4]; структура результата res; } и я набираю каламбур, как показано ниже. ...
Почему этот код недопустим? интервал определения типа INT; неподписанный INT a=6; тогда как следующий код является допустимым интервалом определения типа INT; статический INT a=1;? согласно моему понимающему неподписанному интервалу не "простой тип..
Рассмотрим следующий код: #include & lt; vector & gt; extern std :: vector & lt; int & gt; const my_vector; auto const my_vector = std :: vector & lt; int & gt; {}; Он не компилируется на gcc, но работает на clang ...
Стандарт ли что-нибудь говорит об этом, будучи UB (или нет)? INT & амп; get () {int a = 1; return a; } int main () {std :: cout & lt; (& amp; get () == nullptr); }
Главному методу Java должен быть передан массив строк (традиционно названных args). То есть подпись main должна быть public static main (String [] args) или public static main (String ... args) ...
Я изучаю Java с нуля, и одна вещь, которая показалась мне интересной, заключалась в том, что наиболее сложные структуры данных должны создаваться таким образом: ArrayList < String > список = новый ...
Я реализую итератор через непрерывный кусок памяти и пришел к вопросу о его соответствующем использовании. Моя текущая реализация (при условии, что я перебираю массив символов). typedef ...
6.5 (p7) гласит следующее: объект должен иметь свое сохраненное значение, доступное только через выражение lvalue, которое имеет один из следующих типов: 88) - тип, совместимый с эффективным типом ...
[basic.scope.pdecl] / 7: Точка объявления класса, впервые объявленного в подробном спецификаторе типа, выглядит следующим образом: (7.1) для объявления формы ...
Я пытаюсь понять, как работает наказание типов, когда речь идет о сохранении значения в член структуры или объединения. Стандарт N1570 6.2.6.1 (p6) определяет, что, когда значение сохраняется в ...
int i = 3; int j = (i) ++; против int i = 3; int j = i ++; Есть ли разница между тем, как оцениваются два вышеупомянутых случая? Первый случай эквивалентен увеличению значения или это ...
Примечание. Мне известен этот вопрос: почему в Java нет конструктора копирования? Этот вопрос немного отличается. Я знаю, что следующий фрагмент только создает новую ссылку на существующий объект ...
Я использовал класс std :: tuple и нашел что-то, что я бы сказал, довольно неожиданное поведение. Рассмотрим код: #include < iostream > #include < tuple > int i = 20; станд :: кортеж & л; INT & Amp; ...
От стандарта C ISO / IEC 9899: 201x 5.1.2.3p6: Минимальные требования к соответствующей реализации: Доступ к летучим объектам оценивается строго в соответствии с правилами ...