Вопросы с тегом «c++»

85
Как работает std :: flush?

Может кто-нибудь объяснить (желательно на простом английском), как std::flushработает? Что это такое? Когда бы вы промыли ручей? Почему это важно? Спасибо.

85
A () = A () - почему он компилируется?

class A {}; int main() { A() = A(); return 0; } Почему этот код компилируется? Не должно быть какой-то ошибки, что слева от оператора присваивания должно быть помещено lvalue? Является ли A () lvalue? версия g ++ 4.7...

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

Как я могу одинаково отсортировать два вектора, используя критерий, который использует только один из векторов? Например, предположим, что у меня есть два вектора одинакового размера: vector<MyObject> vectorA; vector<int> vectorB; Затем я сортирую, vectorAиспользуя некоторую функцию...

85
используйте std :: fill для заполнения вектора увеличивающимися числами

Я хотел бы заполнить vector<int>using std::fill, но вместо одного значения вектор должен содержать числа в порядке возрастания после. Я попытался добиться этого, повторяя третий параметр функции на единицу, но это дало бы мне только векторы, заполненные 1 или 2 (в зависимости от позиции...

85
Компиляция завершается неудачно с «перемещением R_X86_64_32 против` .rodata.str1.8 'не может использоваться при создании общего объекта »

Я пытаюсь скомпилировать этот исходный код из make-файла на VPS, но он не работает. VPS - это ОС 64 Cent Вот полная ошибка # make gcc -c -O3 -w -DLINUX -I../SDK/amx/ ../SDK/amx/*.c g++ -c -O3 -w -DLINUX -I../SDK/amx/ ../SDK/*.cpp g++ -c -O3 -w -DLINUX -I../SDK/amx/ *.cpp g++ -O2 -fshort-wchar...

85
Почему Math.pow (0, 0) === 1?

Все мы знаем, что 0 0 неопределенно. Но , Javascript говорит , что: Math.pow(0, 0) === 1 // true и C ++ говорит то же самое: pow(0, 0) == 1 // true ЗАЧЕМ? Я знаю это: >Math.pow(0.001, 0.001) 0.9931160484209338 Но почему не Math.pow(0, 0)выдает ошибок? Или, может NaNбыть, лучше, чем 1....

85
Как преодолеть предупреждение «aclocal-1.15 отсутствует в вашей системе»?

Я пытаюсь запустить программу на C ++ на github. (доступно по следующей ссылке https://github.com/mortehu/text-classifier ) У меня есть Mac, и я пытаюсь запустить его в терминале. Я думаю, что скачал autoconf и automake, но не уверен. Чтобы запустить программу, я перехожу в правильную папку в...

85
Большая разница (x9) во времени выполнения между почти идентичным кодом на C и C ++

Я пытался решить это упражнение с сайта www.spoj.com: FCTRL - Factorial Вам не обязательно это читать, просто сделайте это, если вам интересно :) Сначала я реализовал это на C ++ (вот мое решение): #include <iostream> using namespace std; int main() { unsigned int num_of_inputs; unsigned int...

85
Встроенная версия функции возвращает другое значение, чем не встроенная версия

Как могут две версии одной и той же функции, различающиеся только тем, что одна является встроенной, а другая - нет, возвращать разные значения? Вот код, который я написал сегодня, и я не уверен, как он работает. #include <cmath> #include <iostream> bool is_cube(double r) { return...

85
Законно ли исходный код, содержащий неопределенное поведение, вызывать сбой компилятора?

Скажем, я собираюсь скомпилировать какой-то плохо написанный исходный код C ++, который вызывает неопределенное поведение, и поэтому (как говорится) «все может случиться». С точки зрения того, что спецификация языка C ++ считает приемлемым для "совместимого" компилятора, "что-нибудь" в этом...

85
Почему T * может быть передано в регистр, а unique_ptr <T> не может?

Я смотрю выступление Чендлера Каррута в CppCon 2019: Нет абстракций с нулевой стоимостью в нем он приводит пример того, как он был удивлен тем, сколько накладных расходов вы понесли, используя std::unique_ptr<int>овер int*; этот сегмент начинается примерно в момент времени 17:25. Вы можете...

84
Как реализована среда выполнения обработки исключений C ++?

Меня заинтриговало, как работает механизм обработки исключений C ++. В частности, где хранится объект исключения и как он распространяется через несколько областей, пока не будет обнаружен? Он хранится в какой-то глобальной области? Поскольку это может быть специфическим для компилятора, может ли...

84
long long в C / C ++

Я пробую этот код на компиляторе GNU C ++ и не могу понять его поведение: #include <stdio.h>; int main() { int num1 = 1000000000; long num2 = 1000000000; long long num3; //num3 = 100000000000; long long num4 = ~0; printf("%u %u %u", sizeof(num1), sizeof(num2), sizeof(num3)); printf("%d %ld...

84
Как отловить ошибку сегментации в Linux?

Мне нужно отловить ошибку сегментации в операциях очистки сторонней библиотеки. Иногда это происходит непосредственно перед выходом из моей программы, и я не могу исправить настоящую причину этого. В программировании под Windows я мог сделать это с помощью __try - __catch. Есть ли...

84
Как вызвать функцию C ++ из C?

Я знаю это. Вызов функции C из C ++: Если бы мое приложение было на C ++ и мне пришлось бы вызывать функции из библиотеки, написанной на C. Тогда я бы использовал //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. Это не повлияет...

84
Что находится внутри файла .lib статической библиотеки, статически связанной динамической библиотеки и динамически связанной динамической библиотеки?

Что находится внутри файла .lib статической библиотеки, статически связанной динамической библиотеки и динамически связанной динамической библиотеки? Почему нет необходимости в файле .lib в динамически подключаемой динамической библиотеке, а также в том, что при статической компоновке файл .lib...

84
Зачем мне std :: get_ Contemporary_buffer?

С какой целью я должен использовать std::get_temporary_buffer? Стандарт гласит следующее: Получает указатель на хранилище, достаточное для хранения до n смежных T объектов. Я думал, что буфер будет размещен в стеке, но это не так. Согласно стандарту C ++ этот буфер на самом деле не временный....