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

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

5
Як я закінчую нитку в C ++ 11?
Мені не потрібно правильно завершувати потік або змушувати його реагувати на команду "завершити". Мені цікаво завершити потік насильно за допомогою чистого C ++ 11.

15
Визначення 32 проти 64 біт у C ++
Я шукаю спосіб надійно визначити, чи збирається код C ++ у 32 проти 64 біт. Ми придумали те, що, на нашу думку, є розумним рішенням за допомогою макросів, але цікаво було знати, чи можуть люди придумати випадки, коли це може вийти з ладу чи є кращий спосіб зробити це. Зверніть …

11
Навіщо нам потрібен зовнішній "C" {#include <foo.h>} в C ++?
Для чого нам потрібно використовувати: extern "C" { #include &lt;foo.h&gt; } Конкретно: Коли ми повинні ним користуватися? Що відбувається на рівні компілятора / лінкера, що вимагає від нас його використовувати? Як з точки зору складання / зв’язування це вирішує проблеми, які вимагають від нас його використання?

12
Які платформи мають щось інше, ніж 8-бітний графік?
Час від часу хтось із SO зазначає, що char(також "байт") не обов'язково 8 біт . Здається, що 8-бітний charмайже універсальний. Я б подумав, що для основних платформ необхідно мати 8-розрядний, charщоб забезпечити його життєздатність на ринку. Зараз і історично, які платформи використовують a, charщо не є 8 бітами, і чому …
136 c++  c  cross-platform 

8
C ++ Build Systems - Що використовувати? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 4 роки тому . Удосконаліть це питання Я дивлюся на запуск нового проекту в C ++ - спочатку просто в свій час …
136 c++  build 


9
Чому функції C не можна керувати іменами?
Нещодавно у мене було інтерв'ю, і одне запитання було в чому полягає в застосуванні extern "C"коду C ++. Я відповів, що це використовувати функції C у коді C ++, оскільки C не використовує керування іменами. Мене запитали, чому C не використовує керування іменами, і якщо чесно, я не зміг відповісти. …
136 c++  c  name-mangling  extern-c 

16
Як delete [] знає, що це масив?
Добре, я думаю, що всі ми згодні з тим, що те, що відбувається із наступним кодом, не визначено, залежно від того, що передано, void deleteForMe(int* pointer) { delete[] pointer; } Вказівник може бути різними різними речами, і тому виконання безумовного delete[]на ньому не визначено. Однак припустимо, що ми дійсно передаємо …


8
Яка мета використання -pedantic у компіляторі GCC / G ++?
Ця примітка говорить: -ansi: повідомляє компілятору реалізувати параметр мови ANSI. Це вимикає певні "особливості" GCC, несумісні зі стандартом ANSI. -pedantic: використовується разом із -ansiцим, це вказує компілятору суворо дотримуватися стандарту ANSI, відкидаючи будь-який код, який не відповідає. Насамперед: Яка мета -pedanticі -ansiпараметри компілятора GCC / G ++ (я не міг …
136 c++  c  gcc  g++ 

6
Введіть методи стирання
(Під стиранням типу я маю на увазі приховування деякої або всієї інформації про тип щодо класу, дещо схоже на Boost.Any .) Я хочу отримати методи стирання типу, а також ділитися тими, про які я знаю. Я сподіваюся на те, щоб знайти якусь божевільну техніку, яку хтось подумав у свою найтемнішу …
136 c++  type-erasure 


24
Чому імена змінних не можуть починатися з цифр?
Я деякий час працював з новим розробником C ++, коли він задавав питання: "Чому імена змінних не можуть починатися з цифр?" Я не міг придумати відповідь, за винятком того, що деякі числа можуть містити текст у них (123456L, 123456U), і це було б неможливо, якби компілятори думали, що все з …


3
Як сортувати з лямбда?
sort(mMyClassVector.begin(), mMyClassVector.end(), [](const MyClass &amp; a, const MyClass &amp; b) { return a.mProperty &gt; b.mProperty; }); Я хотів би використовувати функцію лямбда для сортування спеціальних класів замість прив'язки методу екземпляра. Однак наведений вище код дає помилку: помилка C2564: 'const char *': перетворення стилю функції у вбудований тип може приймати лише …
136 c++  sorting  lambda  char  const 

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