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

Запитання про C ++, статичну типізовану, вільну форму, багатопарадигму, складену, загальномовну мову програмування.

1
raw, slab_ptr, unique_ptr, shared_ptr і т. д. ... Як їх правильно вибрати?
У C ++ є багато покажчиків, але якщо чесно, через 5 років або близько того в програмуванні на C ++ (конкретно з Qt Framework), я використовую лише старий необроблений покажчик: SomeKindOfObject *someKindOfObject = new SomeKindOfObject(); Я знаю, що існує багато інших "розумних" покажчиків: // shared pointer: shared_ptr<SomeKindofObject> Object; // unique …

7
Чому конструктори не успадковуються?
Мене бентежить, які проблеми можуть бути, якби конструктор успадкував базовий клас. Cpp Primer Plus каже: Конструктори відрізняються від інших класових методів тим, що вони створюють нові об'єкти, тоді як інші методи викликаються існуючими об'єктами . Це одна з причин, що конструктори не успадковуються . Успадкування означає, що похідний об'єкт може …
33 c++  inheritance 

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

4
Компілятор JIT для C, C ++ тощо
Чи існує якийсь своєчасний компілятор для компільованих мов, таких як C і C ++? (Перші імена, які спадають на думку, - це Кланг та LLVM! Але я не думаю, що вони зараз це підтримують.) Пояснення: Я думаю, що програмне забезпечення могло б отримати користь від зворотного зв’язку під час профілювання …

2
Чому булеве значення зберігається як байт всередині комп'ютера, коли йому потрібен лише один біт
Я нещодавно почав вчитися писати код, і в своїй книзі я натрапив на це питання. "Чому булеве значення зберігається як байт всередині комп'ютера, коли йому потрібен лише один біт?" може хтось пролити більше світла на це питання?

7
Пишіть на С для виконання? [зачинено]
Я знаю, що досить часто чую, що C, як правило, має перевагу у порівнянні з C ++. Я не думав нічого іншого про це, поки не зрозумів, що MSVC навіть не підтримує найновіший стандарт C, але найновіший підтримує його C99 (наскільки я знаю). Я планував написати бібліотеку з деяким кодом …

10
Який сенс використовувати списки над векторами в C ++?
Я провів 3 різні експерименти, включаючи списки C ++ та вектори. Ті, хто має вектори, виявилися ефективнішими, навіть коли було задіяно багато вставок посередині. Звідси виникає питання: в якому випадку списки мають більше сенсу, ніж вектори? Якщо вектори здаються більш ефективними в більшості випадків, і, враховуючи, наскільки схожі їх члени, …

11
typedefs та #defines
Усі ми однозначно використовували typedefs і #defines той чи інший час. Сьогодні, працюючи з ними, я почав розмірковувати над річчю. Розглянемо наведені нижче 2 ситуації для використання intтипу даних з іншим іменем: typedef int MYINTEGER і #define MYINTEGER int Як і вищезгадана ситуація, у багатьох ситуаціях ми можемо дуже добре …

8
Чи вивчає C ++ через Qt Framework, що дійсно навчається C ++ [закрито]
Проблема в тому, що більшість прочитаних нами книг C ++ майже вічно витрачають на синтаксис та основи мови, наприклад, forпетлі while, масиви, списки, покажчики тощо. Але вони, здається, ніколи не будують нічого, що є досить простим для використання для навчання, але достатньо практичним, щоб зрозуміти філософію та силу мови. Тоді …

5
Дозволити ітерацію внутрішнього вектора без протікання реалізації
У мене є клас, який представляє список людей. class AddressBook { public: AddressBook(); private: std::vector<People> people; } Я хочу дозволити клієнтам перебирати вектор людей. Перша думка у мене була просто: std::vector<People> & getPeople { return people; } Однак я не хочу просочувати деталі реалізації клієнту . Я, можливо, захочу підтримувати …
32 c++ 

8
Чи є хорошою практикою використання менших типів даних для змінних для збереження пам'яті?
Коли я вперше вивчив мову C ++, я дізнався, що крім int, float тощо, в мові існують менші або більші версії цих типів даних. Наприклад, я міг би викликати змінну x int x; or short int x; Основна відмінність полягає в тому, що короткий int займає 2 байти пам'яті, а …


8
Чи безпосередньо використання Марк вважається застарілим? [зачинено]
Тому я стикався з багатьма коментарями / публікаціями / тощо, що стосуються створення файлів безпосередньо, і як це нерозумно робити в 2015 році. Я знаю такі інструменти, як CMake, і я фактично використовую CMake досить часто. Вся справа в тому, що CMake просто створює Makefile для вас і допомагає зняти …
31 c++  c  builds  make  cmake 

3
Помилка обробки міркувань
Проблема: З давнього часу я переживаю за exceptionsмеханізм, бо відчуваю, що він насправді не вирішує те, що повинен. СТВЕРДЖЕННЯ: Поза цією темою тривають дебати, і більшість з них намагаються порівняти exceptionsпорівняно з поверненням коду помилки. Це, безумовно, не тут тема. Намагаючись визначити помилку, я погодився б із CppCoreGuidelines від Bjarne …

2
Що таке C ++ / CX і C ++ / CLI, і як вони відносяться до C ++ та WinRT?
Я розглядав питання щодо вивчення C ++ для розробки програм Metro, і саме тоді я натрапив на C ++ / CX. Чи можна програмування Metro кодувати в C ++ 11? Чи потрібно C ++ / CX для роботи? А що саме таке C ++ / CX? Чи можливо створити додаток …
31 c++  windows-8  winrt 

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