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

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

10
C ++: Відсутність стандартизації на бінарному рівні
Чому ISO / ANSI не стандартизував C ++ на бінарному рівні? З C ++ існує багато проблем з портативністю, що відбувається лише через відсутність її стандартизації на бінарному рівні. Дон Бокс пише, (цитуючи свою книгу " Основні COM" , розділ COM як кращий C ++ ) C ++ та портативність …
14 c++  dll  ansi  iso 

3
Як довго і яка складність була б залучена до того, щоб Кріс Сойєр писав більшість магнатів з гірки в асемблері?
У цього питання у мене є ще одне питання про те, як довго і яка складність була б причетною до того, щоб Кріс Сойєр писав більшість магнатів з гірки в асемблері? Для того, щоб уточнити та розбити це питання, мене цікавить; Приблизно, скільки годин людини (гадаєте), на вашу думку, Крису …

3
Чи слід додати конструктори до конструкцій?
Ми часто використовуємо структури c ++ для визначення структури даних на відміну від класу, який може бути повним модулем з методами-членами. Тепер у глибині душі ми знаємо, що вони обоє однакові (слабко кажучи). Той факт, що ми часто використовуємо / трактуємо структури як сукупності лише для даних, створює це заклик …

2
Ціннісні стратегії C ++ DRY
Щоб уникнути нетривіального копіювання C ++, пов'язаного з const, чи бувають випадки, коли const_cast буде працювати, але приватна функція const, що повертає non-const, не буде? У пункті 3 ефективного С ++ Скотта Майєрса він припускає, що const_cast у поєднанні зі статичним складом може бути ефективним та безпечним способом уникнути повторюваного …
14 c++  dry  const 

4
Чому C ++ не дозволяє приймати адресу конструктора?
Чи є конкретна причина, що це могло б порушити мову концептуально, або конкретна причина, що це технічно неможливо в деяких випадках? Використання було б у нового оператора. Редагувати: я збираюся відмовитись від сподівання на те, що я можу "нового оператора" та "нового оператора" отримати прямо та бути прямим. Суть питання …
14 c++ 

4
Чи потрібно в C / C ++ використовувати "const" у параметрах та локальних змінних, коли це можливо?
Це питання надихає запитання про finaljava . Чи потрібно використовувати C / C ++, constколи це можливо? Я знаю, що вже є пов'язане питання щодо використання constв параметрах . На жаль, це питання та його відповіді не відповідають повністю на моє запитання, оскільки мова йде лише про параметри функції, але …

3
Чи використовувати макроси C / C ++ як ярлик для умовної компіляції є хорошою практикою?
Скажімо, я хочу мати кілька типів вихідних повідомлень у своєму коді. Один з них - це DEBUG, який друкується лише тоді, коли код складається в режимі налагодження. Зазвичай мені доведеться написати щось подібне #ifdef DEBUG std::cout << "Debug message" << std::endl; #endif що досить громіздко і дратівливо використовувати у багатьох …
13 c++  c  macros 

5
Методи забезпечення сумісності між платформами (C ++)?
Я закінчував один із моїх ранніх проектів на C ++, який (згідно з рамками) повинен бути кросплатформним. Я повністю розробив проект в Windows і Visual Studio, думаючи, що оскільки бібліотеки все є платформними, то робити збірку OSX "пізніше" було б тривіально. Це виявилося не так, але, скоріше, "код Windows" не …

1
Об'єкти життєвих інваріантів проти семантики переміщення
Коли я давно вивчив C ++, мені було наголошено, що частина пункту C ++ полягає в тому, що так само, як петлі мають "петлю-інваріанти", класи також мають інваріанти, пов'язані з життям об'єкта - речі, які повинні бути правдивими доки об’єкт живий. Речі, які повинні бути встановлені конструкторами, а збережені методами. …

3
Який сенс робити синтаксичне розмежування стандартних та визначених користувачем типів?
Хоча тут я торкнуся конкретно конвенцій про іменування C ++ та Bjarne Stroustrup , я в принципі бачив, що люди використовують дещо подібні правила для інших мов тут і там. Отже, основна ідея полягає в тому, що під час читання коду слід вміти відрізняти стандартні типи від визначених користувачем типів …

5
Виділення Java Heap швидше, ніж C ++
Я вже опублікував це питання на SO, і це все нормально. На жаль, це було закрито (для повторного відкриття потрібен лише один голос), але хтось запропонував, щоб я розмістив його тут, оскільки він краще підходить, тому наступне - це буквально копіювальна паста питання Я читав коментарі до цієї відповіді і …

8
Чи слід наполягати на тому, щоб працівник все-таки писав поганий код через багато років? [зачинено]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 6 років тому . Я ставлю це питання програмістам на C ++, оскільки: a) Тільки програміст на C ++ може судити про технічні достоїнства …

2
Як я можу уникати запису багато пропускних функцій у обгортку?
У мене є клас, який обгортає інший клас загального базового типу. Оскільки інтерфейс базового типу досить великий, це передбачає написання безлічі функцій проходження. Я шукаю спосіб уникнути цього. Давайте зробимо приклад: Car / \ Volvo VolvoWithTrailer Тепер я маю реалізувати кожну функцію в автомобільному інтерфейсі для VolvoWithTrailer і викликати відповідну …

3
Чому компілятор не може не імпортувати файл заголовка двічі самостійно?
Нове для C ++! Тому я читав це: http://www.learncpp.com/cpp-tutorial/110-a-first-look-at-the-preprocessor/ Охоронці заголовків Оскільки файли заголовків можуть включати інші файли заголовків, можна опинитися в ситуації, коли файл заголовка потрапляє кілька разів. Тому ми робимо директиви препроцесорів, щоб цього уникнути. Але я не впевнений - чому компілятор не може просто ... не імпортувати …
13 c++  compiler 

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

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