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

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

9
Наскільки важливо, що ви знаєте стандарт C ++?
Я намагався шукати, але не бачив подібного запитання (або це, або моя пошукова термінологія була неправильною - якщо так, сміливо закривайте). Я завзятий користувач ТА, і зауважую, що в дискусіях та відповідях є багато посилань на стандарт C ++ - і я мушу визнати, що я ніколи не читав цього …
11 c++  standards 

4
C ++ Iterator, чому немає базового класу Iterator, від якого успадковуються всі ітератори
Я навчаюсь на іспиті, і у мене є питання, на яке я намагаюся дати і відповісти. Чому не існує базового класу ітератора, від якого успадковуються всі інші ітератори? Я думаю, мій учитель посилається на ієрархічну структуру з посилання на cpp " http://prntscr.com/mgj542 ", і ми повинні надати іншу причину, ніж …
11 c++  iterator 

1
Переміщення семантики в C ++ - Переміщення-повернення локальних змінних
Я розумію, що в C ++ 11, коли ви повертаєте локальну змінну з функції за значенням, компілятору дозволено трактувати цю змінну як посилання на значення r і "перемістити" її з функції, щоб повернути її (якщо Натомість RVO / NRVO не відбувається). Моє запитання: чи не може це порушити існуючий код? …
11 c++  c++11 

3
Чи важливо приховати код програми C ++?
У світі Java, здається, іноді є проблема, але що з C ++? Чи є різні рішення? Я думав про те, що хтось може замінити бібліотеку C ++ певної ОС на іншу версію тієї ж бібліотеки, але повну символів налагодження, щоб зрозуміти, що робить мій код. Чи не добре використовувати стандартні …

5
Як вирішити взаємозалежність класу в моєму коді C ++?
У моєму проекті C ++ я маю два класи Particleта Contact. У Particleкласі у мене є змінна члена, std::vector<Contact> contactsяка містить усі контакти Particleоб'єкта, і відповідні функції члена getContacts()та addContact(Contact cont). Таким чином, у "Particle.h" я включаю "Contact.h". У Contactкласі я хотів би додати код до конструктора для Contactцього виклику …

3
Впорскування в залежності: Чи слід створити клас "Автомобіль", щоб вмістити всі його частини?
У моєму додатку C ++ є багато автомобілів, які містяться у RaceTrack. Кожна машина складається з сотень деталей. Кожна частина залежить від якоїсь іншої частини чи двох. Я прочитав багато запитань ТА щодо книги Д.І. та Марка Семана, і, схоже, я не повинен визначати клас «Автомобіль» лише для того, щоб …

5
Оптимізація надмірних виділень рядків у C ++
У мене досить складний компонент C ++, продуктивність якого стала проблемою. Профілювання показує, що більшість часу на виконання просто витрачається на виділення пам'яті для std::strings. Я знаю, що серед цих рядків багато надмірності. Жменька значень повторюється дуже часто, але є також багато унікальних значень. Струни, як правило, досить короткі. Зараз …

3
Уникаючи конструкторів з багатьма аргументами
Тож у мене є завод, який створює об’єкти різних класів. Усі можливі класи походять від абстрактного предка. Фабрика має файл конфігурації (синтаксис JSON) і вирішує, який клас створити, залежно від конфігурації користувача. Щоб досягти цього, фабрика використовує boost :: property_tree для JSON-розбору. Він проходить птахом і вирішує, який конкретний об’єкт …

2
Заслуги семантики копіювання на запис
Мені цікаво, які можливі достоїнства має копіювання при написанні? Звичайно, я не чекаю особистої думки, але реальні практичні сценарії, де це може бути технічно і практично корисно в відчутному плані. І під відчутним я маю на увазі щось більше, ніж врятувати вас набравши &персонажа. Для уточнення це питання знаходиться в …
10 c++  qt 

1
Черга повідомлень для RTOS для мікроконтролерів
Я зараз пишу RTOS для мікроконтролерів. Вся справа написана на C ++ 11 - якщо хтось зацікавлений, а посилання на сховище знаходиться внизу. В даний час я пишу клас, який є простою чергою даних для передачі об'єктів між потоками (або між обробниками переривань і потоками або обробниками переривань та іншими …

1
Чому GCC перейшов з Bison на рекурсивний аналізатор спуску для C ++ та C?
Чи була якась зміна мови, яка цього вимагала, або якась практична причина, чому Бізон вже не був відповідним чи оптимальним? Я побачив у wikipedia, що вони перейшли, посилаючись на примітки до випуску GCC 3.4 та GCC 4.1 . У цих примітках до випуску зазначено: Рукописний рекурсивно-розбірний C ++ аналізатор замінив …
10 c++  c  parsing  compiler 

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

1
"Шаблони C ++: Повне керівництво" (c) 2002 - оновлено C ++ 11?
Книга C ++ Шаблони: Повне керівництво , (с) 2002 року, мені здається дуже привабливим, але, оскільки це вже 12 років, я переживаю, що це може бути застарілим. Є кілька дуже сприятливих відгуків Amazon, датованих недавно як рік тому, і я не бачу жодних інших останніх назв на шаблонах C ++. …
10 c++  templates 

2
Код тестування побічних ефектів - важкий код
Я починаю писати код C ++, щоб запустити робота, і не знаю, як включити тестування одиниць, якщо дійсно можу. Мені була надана бібліотека, яка дозволяє створювати "команди" для роботи, які автоматично плануються та виконуються. Механізм створення цих команд є підклас команди базового класу вони надають, і здійснювати віртуальну void Initialize(), …

7
Я вважаю, що я змішав код C і C ++, коли мені не довелося; Це проблема і як виправити?
Передісторія / сценарій Я почав писати додаток CLI суто в C (моя перша правильна програма C або C ++, яка не була "Hello World" або її варіацією). Приблизно на середині я працював із "рядками" введення користувача (масиви char), і я виявив об'єкт стримерного струму C ++. Я бачив, що я …
10 c++  c 

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