Вопросы с тегом «c++-faq»

Предоставляет совместный, отредактированный сообществом C ++ FAQ


1
Каковы новые функции в C ++ 17?
Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. C ++ 17 теперь полностью готов, поэтому вряд ли он претерпит большие изменения. Сотни предложений были выдвинуты для C ++ 17. Какие …
1007 c++  standards  c++-faq  c++17 

5
Неопределенные точки поведения и последовательности
Что такое «точки последовательности»? Какова связь между неопределенным поведением и точками последовательности? Я часто использую смешные и запутанные выражения, например a[++i] = i;, чтобы чувствовать себя лучше. Почему я должен прекратить использовать их? Если вы прочитали это, обязательно посетите следующий вопрос. Неопределенное поведение и точки последовательности перезагружены . (Примечание. Предполагается, …


5
Каковы правила использования подчеркивания в идентификаторе C ++?
В C ++ принято называть переменные-члены с каким-то префиксом, обозначающим тот факт, что они являются переменными-членами, а не локальными переменными или параметрами. Если вы пришли из MFC, вы, вероятно, будете использовать m_foo. Я тоже видел myFooиногда. C # (или, возможно, просто .NET), кажется, рекомендует использовать только подчеркивание, как в _foo. …

18
Почему программисты на C ++ должны минимизировать использование «нового»?
Я наткнулся на вопрос переполнения стека Утечка памяти с помощью std :: string при использовании std :: list <std :: string> , и один из комментариев говорит об этом: Прекратите использовать newтак много. Я не вижу причин, по которым ты использовал новое, где бы ты ни был. Вы можете создавать …


4
Что означает T && (двойной амперсанд) в C ++ 11?
Я изучил некоторые из новых функций C ++ 11, и одна из них я заметил, это двойной амперсанд при объявлении переменных, например T&& var. Для начала, как зовут этого зверя? Я бы хотел, чтобы Google позволил нам искать такие знаки препинания, как этот. Что именно это значит? На первый взгляд, …

9
Зачем использовать явно бессмысленные операторы do-while и if-else в макросах?
Во многих макросах C / C ++ я вижу код макроса, заключенный в нечто вроде бессмысленного do whileцикла. Вот примеры. #define FOO(X) do { f(X); g(X); } while (0) #define FOO(X) if (1) { f(X); g(X); } else Я не вижу, что do whileделает. Почему бы просто не написать это …
788 c++  c  c-preprocessor  c++-faq 

12
std :: wstring VS std :: string
Я не могу понять разницу между std::stringи std::wstring. Я знаю, wstringподдерживает широкие символы, такие как символы Юникода. У меня есть следующие вопросы: Когда я должен использовать std::wstringболее std::string? Может ли std::stringсодержать весь набор символов ASCII, включая специальные символы? Является ли std::wstringподдерживаются компиляторами всех популярных C ++? Что такое « широкий …
742 c++  string  unicode  c++-faq  wstring 




24
Какой стандарт C ++ указывает размер типа int, long?
Я ищу подробную информацию о размере основных типов C ++. Я знаю, что это зависит от архитектуры (16 бит, 32 бита, 64 бита) и компилятора. Но есть ли стандарты для C ++? Я использую Visual Studio 2008 на 32-битной архитектуре. Вот что я получаю: char : 1 byte short : …
697 c++  c++-faq 


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.