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

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

5
Чи передача аргументів як посилань на const передчасна оптимізація?
"Передчасна оптимізація - корінь усього зла" Я думаю, що з цим ми можемо домовитись усіх. І я дуже намагаюся уникати цього. Але останнім часом мене цікавить практика передачі параметрів через const Reference замість Value . Мене вчили / дізналися, що нетривіальні аргументи функцій (тобто більшість непримітивних типів) бажано передавати через …

8
Чи мають бути твердження у версії версій
Поведінка за замовчуванням assertв C ++ полягає в тому, щоб нічого не робити у версіях версій. Я припускаю, що це робиться з міркувань продуктивності та, можливо, для того, щоб користувачі не бачили неприємних повідомлень про помилки. Однак я б заперечував, що ті ситуації, коли assertвистрілив, але був відключений, є ще …

3
Наскільки неправильно говорити про "методи" C ++ (проти "членських функцій")?
Я розумію, що згідно зі специфікацією C ++ не існує такого поняття, як "метод", і деякі (багато? Більшість?) Програмісти C ++ вважають "метод" Java-ізмом. З іншого боку, навіть на форумі C ++ люди, здається, говорять про методи, не посмикуючись. Я шукаю відомі конвенції або поширені практики щодо цієї термінології. Я …

5
Це гарна ідея "#define me (* this)"?
Цей макрос може бути визначений у деякому глобальному заголовку або, краще, як параметр командного рядка компілятора: #define me (*this) Приклад використання: some_header.h: inline void Update() { /* ... */ } main.cpp: #include "some_header.h" class A { public: void SetX(int x) { me.x = x; me.Update(); } void SomeOtherFunction() { ::Update(); …
19 c++ 

11
Чи компілятор C ++ видаляє / оптимізує марні дужки?
Буде код int a = ((1 + 2) + 3); // Easy to read бігати повільніше, ніж int a = 1 + 2 + 3; // (Barely) Not quite so easy to read або сучасні компілятори досить розумні, щоб видалити / оптимізувати "непотрібні" дужки. Це може здатися дуже крихітним питанням …

7
Чи впливає модульне програмування на час обчислення?
Усі кажуть, що я повинен зробити свій код модульним, але чи не менш ефективно він, якщо я використовую більше викликів методів, а не менших, але більших методів? У чому полягає різниця в Java, C або C ++? Я розумію, що це легше редагувати, читати та розуміти, особливо в групі. Тож …
19 java  c++  c  efficiency 

3
QT-C ++ проти загальних C ++ та STL [закрито]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 5 років тому . Нещодавно почав працювати з моїм C ++, на Ubuntu QQ. Мені подобається рамка Qt для всього, особливо для побудови графічного …
19 c++  qt  stl  gtk  pyqt4 

6
Мова програмування, що дозволяє визначати нові межі для простих типів
Багато мов, як C++, C#і Javaдозволяють створювати об'єкти, що представляють прості типи, як integerабо float. Використовуючи інтерфейс класу, ви можете переосмислити операторів і виконувати таку логіку, як перевірка, чи значення перевищує ділове правило 100. Мені цікаво, чи можна в деяких мовах визначати ці правила як анотації чи атрибути змінної / …

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

5
Виявлення неправильного використання delete [] проти видалення під час компіляції
Я хотів би знати, чи можна виявити deleteпомилку, прокоментовану нижче, під час компіляції? Особливо, я хотів би почути про компілятор g ++. ClassTypeA *abc_ptr = new ClassTypeA[100]; abc_ptr[10].data_ = 1; delete abc_ptr; // error, should be delete []

6
Чи практично відмовитися від STL в розробці C ++? [зачинено]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередилось на одній проблемі, лише відредагувавши цю публікацію . Закрито 4 роки тому . Я знаю, що в деяких сферах (наприклад, ігрової індустрії) STL не рекомендується. Отже, моє запитання: …
19 c++  stl 

6
Чи корисна звичка використовувати вирази C у коді C ++?
У школі ми почали вивчати C цього року, незважаючи на те, що я випереджаю клас, і я навчився Java, C ++ і C, поки клас лежить в основі C. Як би там не було, я документував себе, читав книги, статті, і я запитав свого вчителя, чому я повинен вивчати С, …
19 c++  c 

5
Чому C ++ не може прийняти підхід D для його реалізації?
Як багато хто з вас, хлопці, знають, що поняття , підхід C ++ щодо обмеження можливих типів аргументу шаблону не вдалося включити до C ++ 11. Я дізнався, що мова програмування D 2.0 має схожу особливість для загального програмування. Її рішення мені здається досить елегантним та простим. Тому моє запитання …
19 c++  templates  d 

14
Університет викладає C ++ у стилі DOS, як з цим боротися [закрито]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 5 років тому . Я багато років займався програмуванням, але хотів отримати диплом, щоб зробити себе більш працездатним. Одного разу вже пройшовши університет, я …
19 c++  teaching 

6
Вбудовані функції в C ++. У чому справа?
Згідно з тим, що я прочитав, компілятор не зобов'язаний заміщати виклик функції вбудованої функції своїм тілом, але зробить це, якщо зможе. Це змусило мене задуматися - чому ми маємо вбудоване слово, якщо це так? Чому б не зробити всі вбудовані функції за замовчуванням і не дати компілятору розібратися, чи може …

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