Запитання з тегом «c++»

C ++ - мова програмування загального призначення. Спочатку він був розроблений як розширення до C і має подібний синтаксис, але зараз це зовсім інша мова. Використовуйте цей тег для запитань про код (який потрібно) зібрати за допомогою компілятора C ++. Використовуйте тег, що стосується версії, для питань, пов’язаних із конкретною стандартною редакцією [C ++ 11], [C ++ 14], [C ++ 17] або [C ++ 20] тощо.

15
Як уникнути переповнення в expr. А Б В Г
Мені потрібно обчислити вираз, який виглядає так:, A*B - C*Dде їх типи: signed long long int A, B, C, D; кожне число може бути дійсно великим (не переповнюючи його тип). Хоча це A*Bможе спричинити переповнення, в той же час вираження A*B - C*Dможе бути дуже малим. Як я можу правильно …
161 c++  c  integer-overflow 

2
Чому в цьому коді C алфавіт розділений на кілька діапазонів?
У спеціальній бібліотеці я побачив реалізацію: inline int is_upper_alpha(char chValue) { if (((chValue >= 'A') && (chValue <= 'I')) || ((chValue >= 'J') && (chValue <= 'R')) || ((chValue >= 'S') && (chValue <= 'Z'))) return 1; return 0; } Це писанка або які переваги перед стандартним методом C / …
161 c++  c  character  toupper 

19
Чи є робочий інструмент рефакторингу C ++? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 6 місяців тому . Удосконаліть це питання Хтось знає повнофункціональний інструмент рефакторингу для C ++, який надійно працює з великими базами коду …
161 c++  refactoring 

11
Чому конструктор без параметрів за замовчуванням відходить, коли ви створюєте його з параметрами
У C #, C ++ та Java, коли ви створюєте конструктор, що приймає параметри, без параметри за замовчуванням відходить. Я завжди просто приймав цей факт, але тепер почав цікавитись, чому. У чому причина такої поведінки? Це просто "міра безпеки / здогадка", яка говорить: "Якщо ви створили власний конструктор, ви, мабуть …

7
std :: функція проти шаблону
Завдяки C ++ 11 ми отримали std::functionсімейство функторних обгортків. На жаль, я продовжую чути лише погані речі щодо цих нових доповнень. Найпопулярнішим є те, що вони жахливо повільні. Я тестував це, і вони справді смоктали в порівнянні з шаблонами. #include <iostream> #include <functional> #include <string> #include <chrono> template <typename F> …

5
Чому нам потрібні необхідні потреби?
Один із куточків концепцій C ++ 20 - це те, що існують певні ситуації, в яких потрібно писати requires requires. Наприклад, цей приклад з [expr.prim.req] / 3 : Потрібно вираз також може бути використано в вимагаєте-положення ([Темп]) в якості способу написання спеціальних обмежень на аргументах шаблону , такі як один …
161 c++  c++-concepts  c++20 


9
Стек, статична та купа в C ++
Я шукав, але не дуже добре зрозумів ці три поняття. Коли мені потрібно використовувати динамічне розподілення (в купі) і в чому його реальна перевага? Які проблеми статичного і стекового? Чи можу я написати всю програму, не виділяючи змінних у купу? Я чув, що інші мови містять "сміттєзбірник", тому вам не …

3
Як отримати std :: векторний покажчик на необроблені дані?
Я намагаюся використовувати std::vectorяк charмасив. Моя функція приймає недійсний покажчик: void process_data(const void *data); Перш ніж я просто використав цей код: char something[] = "my data here"; process_data(something); Який працював як очікувалося. Але зараз мені потрібна динамічність std::vector, тому я спробував цей код замість цього: vector<char> something; *cut* process_data(something); Питання …
160 c++  stl  vector 

3
Які гарантії складності стандартних контейнерів?
Мабуть ;-) стандартні контейнери дають певну форму гарантій. Який тип гарантій і чим саме відрізняються різні типи контейнерів? Працюючи зі сторінки SGI (про STL ), я придумав це: Container Types: ================ Container: Forward Container Reverse Container Random Access Container Sequence Front Insert Sequence Back Insert Sequence Associative Container Simple Associative …
160 c++  stl  containers  big-o 

14
Найшвидший спосіб захоплення екрана в Windows
Я хочу написати програму скріншоу для платформи Windows, але не знаю, як захопити екран. Єдиний метод, про який я знаю, - це використовувати GDI, але мені цікаво, чи існують інші способи зробити це, і, якщо вони є, які мають найменші витрати? Швидкість - пріоритет. Програма екранізації буде для запису ігрових …
159 c++  c  windows 

12
Як надрукувати консоль при використанні Qt
Я використовую Qt4 і C ++ для створення деяких програм у комп'ютерній графіці. Мені потрібно мати можливість друкувати деякі змінні в моїй консолі під час виконання, не налагоджуючи, але cout, здається, не працює, навіть якщо я додаю бібліотеки. Чи є спосіб це зробити?
159 c++  qt  cout 

9
C ++ valarray проти вектора
Мені дуже подобаються вектори. Вони витончені і швидкі. Але я знаю, що ця річ під назвою валярій існує. Чому я використовую валярій замість вектора? Я знаю, що у валярій є синтаксичний цукор, але крім них, коли вони корисні?

13
Що насправді означає «Пам'ять, виділена під час компіляції»?
У мовах програмування, таких як C і C ++, люди часто посилаються на статичне та динамічне розподіл пам'яті. Я розумію це поняття, але фраза "Вся пам'ять була виділена (зарезервована) під час компіляції" завжди мене бентежить. Компіляція, наскільки я розумію, перетворює код C / C ++ високого рівня в машинну мову …

2
Використання розумних покажчиків для учнів класу
У мене виникають проблеми з розумінням використання смарт-покажчиків як членів класу в C ++ 11. Я багато читав про розумні покажчики і, думаю, я розумію, як unique_ptrі shared_ptr/ weak_ptrв цілому працювати. Що я не розумію, це справжнє використання. Схоже, всі рекомендують використовувати unique_ptrяк шлях, який потрібно пройти майже весь час. …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.