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

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

10
Які переломні зміни вводяться в C ++ 11?
Я знаю, що принаймні одна зі змін C ++ 11, яка призведе до припинення компіляції старого коду: введення explicit operator bool()в стандартну бібліотеку, заміна старих екземплярів operator void*(). Зрозуміло, що код, який буде порушено, - це, мабуть, код, який у першу чергу не мав би бути дійсним, але все-таки все-таки …
227 c++  c++11 

18
Чому оператор switch не може бути застосований до рядків?
Склавши наступний код і отримав помилку type illegal. int main() { // Compilation error - switch expression of type illegal switch(std::string("raj")) { case"sda": } } Ви не можете використовувати рядок в будь-якому switchабо case. Чому? Чи є якесь рішення, яке добре працює для підтримки логіки, подібної до перемикання рядків?

11
Чому нестандартна посилання не може прив'язуватися до тимчасового об'єкта?
Чому заборонено отримувати неконтрастну посилання на тимчасовий об’єкт, який getx()повертається функцією ? Зрозуміло, що це заборонено стандартом C ++, але мене цікавить мета такого обмеження, а не посилання на стандарт. struct X { X& ref() { return *this; } }; X getx() { return X();} void g(X & x) {} …

5
Чи ключове слово "переосмислити" - це лише перевірка перекритого віртуального методу?
Наскільки я розумію, введення overrideключового слова в C ++ 11 є не більше ніж перевірка , щоб переконатися , що функція реалізується є overrideІНГ з virtualфункції в базовому класі. Це все?

7
Чи є переваги проходження вказівника над проходженням посиланням на C ++?
Які переваги проходження за вказівником над проходженням за посиланням в C ++? Останнім часом я бачив ряд прикладів, які вибирали аргументи функції передачі вказівниками замість передачі посилання. Чи є користь від цього? Приклад: func(SPRITE *x); із закликом func(&mySprite); vs. func(SPRITE &x); із закликом func(mySprite);

8
Що таке базовий покажчик та покажчик стека? На що вони вказують?
Використовуючи цей приклад із вікіпедії, в якій DrawSquare () викликає DrawLine (), (Зверніть увагу, що ця діаграма має високі адреси внизу та низькі адреси вгорі.) Хтось міг би мені пояснити, що ebpі що espв цьому контексті? З того, що я бачу, я б сказав, що вказівник стека вказує завжди на …
225 c++  c  assembly  x86 


5
Яка різниця між _tmain () та main () у C ++?
Якщо я запускаю свою програму C ++ із наступним методом main (), все гаразд: int main(int argc, char *argv[]) { cout << "There are " << argc << " arguments:" << endl; // Loop through each argument and print its number and value for (int i=0; i<argc; i++) cout << …
224 c++  unicode  arguments 

13
Який найкращий безкоштовний C ++ профілер для Windows? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 4 роки тому . Удосконаліть це питання Я шукаю профілера, щоб знайти вузьке місце в моєму коді C ++. Я хотів би …
224 c++  windows  profile 

6
Функція передана як аргумент шаблону
Я шукаю правила, пов’язані з передачею функцій шаблонів C ++ як аргументів. Це підтримується C ++, як показано на прикладі тут: #include <iostream> void add1(int &v) { v+=1; } void add2(int &v) { v+=2; } template <void (*T)(int &)> void doOperation() { int temp=0; T(temp); std::cout << "Result is " …

18
Чому летучий існує?
Що робить volatile ключове слово? У C ++ яку проблему вона вирішує? У моєму випадку я ніколи свідомо не потребував цього.
222 c++  volatile  c++-faq 

17
Видаліть пробіли з std :: string в C ++
Який бажаний спосіб видалити пробіли з рядка в C ++? Я міг би проглянути всі символи та створити нову рядок, але чи є кращий спосіб?
222 c++  stl 



5
Наскільки саме std :: string_view швидше, ніж const std :: string &?
std::string_viewзробив це на C ++ 17, і його широко рекомендується використовувати замість const std::string&. Однією з причин є продуктивність. Чи може хтось пояснити, наскільки саме std::string_view / буде швидше, ніж const std::string&при використанні як тип параметра? (припустимо, що копії в назві не зроблено)
221 c++  string  c++17  string-view 

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