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

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

7
Чи можна викликати віртуальну функцію базового класу, якщо я її переосмислюю?
Скажіть, у мене є заняття Fooта Barналаштовано так: class Foo { public: int x; virtual void printStuff() { std::cout << x << std::endl; } }; class Bar : public Foo { public: int y; void printStuff() { // I would like to call Foo.printStuff() here... std::cout << y << std::endl; …

22
Визначте, чи два прямокутники перетинаються один з одним?
Я намагаюся написати програму C ++, яка вимагає від користувача таких входів для побудови прямокутників (між 2 і 5): висота, ширина, x-pos, y-pos. Всі ці прямокутники існуватимуть паралельно осі x та y, тобто всі їхні краї матимуть нахили 0 або нескінченності. Я намагався реалізувати те, що згадується в цьому питанні, …

14
Чому C ++ не має рефлексії?
Це дещо химерне питання. Мої завдання - зрозуміти мовне рішення дизайну та визначити можливості відображення в C ++. Чому мовний комітет C ++ не пішов на реалізацію роздумів про мову? Чи занадто складно відображення мовою, яка не працює на віртуальній машині (наприклад, Java)? Якби реалізувати роздуми для C ++, які …
337 c++  reflection 

14
Коли слід використовувати здатність constexpr в C ++ 11?
Мені здається, що мати "функцію, яка завжди повертає 5", це порушує або розбавляє значення "виклику функції". Повинно бути причина чи потреба в цій здатності, або це не було б в C ++ 11. Чому саме там? // preprocessor. #define MEANING_OF_LIFE 42 // constants: const int MeaningOfLife = 42; // constexpr-function: …
337 c++  c++11  constexpr 

9
Що таке зовнішня та внутрішня зв'язки?
Я хочу зрозуміти зовнішні та внутрішні зв’язки та їхню різницю. Я також хочу знати значення constзмінні внутрішньо посилаються за замовчуванням, якщо інше не оголошено як extern.
337 c++  c++-faq 


17
std :: рядок до char *
Я хочу перетворити std :: string в тип даних char * або char [] . std::string str = "string"; char* chr = str; Результати в: "помилка: не вдається перетворити 'std :: string' в 'char' ..." . Які методи доступні для цього?
335 c++  string  char 

20
int a [] = {1,2,}; Дивні коси дозволені. Якась конкретна причина?
Можливо, я не з цієї планети, але мені здається, що наступною має бути помилка синтаксису: int a[] = {1,2,}; //extra comma in the end Але це не так. Я був здивований , коли цей код скомпільовано на Visual Studio, але я навчився не довіряти MSVC компілятор, наскільки правила C ++ …

5
Для чого використовуються вбудовані простори імен?
C ++ 11 дозволяє inline namespaces, всі члени яких також автоматично знаходяться в додатку namespace. Я не можу придумати жодного корисного застосування цього - може хтось, будь-ласка, навести короткий, стислий приклад ситуації, коли inline namespaceпотрібна ситуація, і де це найбільш ідіоматичне рішення? (Крім того, мені незрозуміло, що відбувається, коли a …

11
Як друкувати подвійне значення з повною точністю за допомогою cout?
Тож я отримав відповідь на своє останнє запитання (не знаю, чому я не думав про це). Я друкував doubleвикористання, coutяке було округлене, коли я не очікував цього. Як я можу зробити coutдрук з doubleвикористанням повної точності?

2
Як реалізувати класичні алгоритми сортування в сучасних C ++?
std::sortАлгоритм (і його кузени std::partial_sortі std::nth_element) зі стандартної бібліотеки C ++ в більшості реалізацій складний і гібридна об'єднання більш елементарних алгоритмів сортування , таких як вибір сортування, вставки сортування, швидке сортування, сортування злиттям, або купи сортування. Тут і на сестринських сайтах є багато питань, таких як https://codereview.stackexchange.com/, пов'язані з помилками, …

3
Чи 0 - десятковий буквальний чи восьмеричний буквальний?
Нуль завжди дорівнює нулю, тому це не має значення. Але в нещодавній дискусії з другом він сказав, що восьмеричні буквари сьогодні майже не використовуються. † Потім мені зрозуміло, що насправді майже всі цілі букви в моєму коді є восьмеричними, а саме 0. Чи 0є вісімковий буквал відповідно до граматики С …
329 c++  zero  octal 

10
Як правильно реалізувати заводський шаблон методу в C ++
Є одна річ у С ++, яка змушує мене відчувати себе незручно досить довго, тому що я, чесно кажучи, не знаю, як це зробити, хоча це звучить просто: Як правильно реалізувати заводський метод у C ++? Мета: зробити можливим дозволити клієнтові інстанціювати який-небудь об’єкт за допомогою заводських методів замість конструкторів …

22
Чи неініціалізована локальна змінна є найшвидшим генератором випадкових чисел?
Я знаю, що неініціалізована локальна змінна - це невизначена поведінка ( UB ), а також значення може мати уявлення про пастку, що може вплинути на подальшу роботу, але іноді я хочу використовувати випадкове число лише для візуального подання і не буду надалі використовувати їх в іншій частині наприклад, встановіть щось …


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