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

C ++ - это язык программирования общего назначения. Первоначально он был разработан как расширение C и имеет аналогичный синтаксис, но теперь это совершенно другой язык. Используйте этот тег для вопросов о коде (который будет скомпилирован с помощью компилятора C ++). Используйте тег, зависящий от версии, для вопросов, связанных с конкретной редакцией стандарта [C ++ 11], [C ++ 14], [C ++ 17] или [C ++ 20] и т. Д.



2
Что я могу сделать с перемещенным объектом?
Определяет ли стандарт точно, что я могу делать с объектом после его перемещения? Раньше я думал, что все, что вы можете сделать с перемещенным объектом, - это уничтожить его, но этого было бы недостаточно. Например, возьмите шаблон swapфункции, определенный в стандартной библиотеке: template <typename T> void swap(T& a, T& b) …


5
Когда я должен использовать std :: thread :: detach?
Иногда я должен использовать std::threadдля ускорения моего приложения. Я также знаю, join()ждет, пока поток не завершится. Это легко понять, но в чем разница между звонком detach()и не звонком? Я думал, что без detach(), метод потока будет работать с использованием потока независимо. Не отрываясь: void Someclass::Somefunction() { //... std::thread t([ ] …
140 c++  c++11  stdthread 

11
Итерация по вектору C ++ с использованием цикла for
Я новичок в языке C ++. Я начал использовать векторы и заметил, что во всем коде, который я вижу, для итерации по вектору через индексы, первый параметр forцикла всегда основан на векторе. В Java я мог бы сделать что-то вроде этого с ArrayList: for(int i=0; i < vector.size(); i++){ vector[i].doSomething(); …


12
Какие новые возможности добавляют в C ++ определяемые пользователем литералы?
C ++ 11 вводит определяемые пользователем литералы , которые позволят введение нового буквального синтаксиса на основе существующих литералов ( int, hex, string, float) , так что любой тип будет иметь возможность буквального представления. Примеры: // imaginary numbers std::complex<long double> operator "" _i(long double d) // cooked form { return std::complex<long …

1
C ++: переменная 'std :: ifstream ifs' имеет инициализатор, но неполный тип
Извините, если это довольно нудистно, но я довольно плохо знаком с C ++. Я пытаюсь открыть файл и прочитать его с помощью ifstream: vector<string> load_f(string file) { vector<string> text; ifstream ifs(file); string buffer, str_line; int brackets = 0; str_line = ""; while ( getline(ifs, buffer) ) { buffer = Trim( …
139 c++  fstream  return-type 

3
Разница между size_t и std :: size_t
Каковы различия между size_t и std::size_tс точки зрения того, где они объявлены, когда они должны использоваться и каких-либо других отличительных особенностей?
139 c++  size-t 

5
Поворот точки вокруг другой точки (2D)
Я пытаюсь сделать карточную игру, где карты разветвляются. Прямо сейчас, чтобы отобразить его, я использую Allegro API, который имеет функцию: al_draw_rotated_bitmap(OBJECT_TO_ROTATE,CENTER_X,CENTER_Y,X ,Y,DEGREES_TO_ROTATE_IN_RADIANS); так что с этим я могу легко сделать эффект вентилятора. Проблема в том, что вы знаете, какая карта находится под мышью. Чтобы сделать это, я подумал о проведении …
139 c++  algorithm 


3
Эффективный C ++ по-прежнему эффективен?
Из того, что я увидел в этом посте, я решил начать читать книгу « Эффективный C ++» . Но теперь, когда появилось много новых функций из-за C ++ 11 и изменились некоторые передовые практики, я не уверен, действительно ли это хорошая идея. С появлением C ++ 11 устарели какие-либо советы, …

5
C ++ Оператор двойного адреса? (&&)
Я читаю исходный код STL и понятия не имею, что &&должен делать адресный оператор. Вот пример кода из stl_vector.h: vector& operator=(vector&& __x) // <-- Note double ampersands here { // NB: DR 675. this->clear(); this->swap(__x); return *this; } Имеет ли смысл «Адрес адреса»? Почему у него два оператора адреса вместо …

13
Можно ли сериализовать и десериализовать класс в C ++?
Можно ли сериализовать и десериализовать класс в C ++? Я использую Java уже 3 года, и сериализация / десериализация на этом языке довольно тривиальна. Есть ли в C ++ похожие функции? Существуют ли собственные библиотеки, которые обрабатывают сериализацию? Пример будет полезен.
138 c++  serialization 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.