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

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

8
Що означає int argc, char * argv []?
У багатьох C ++ IDE і компіляторах, коли він генерує для вас основну функцію, виглядає так: int main(int argc, char *argv[]) Коли я кодую C ++ без IDE, просто за допомогою компілятора командного рядка, я набираю: int main() без будь-яких параметрів. Що це означає, і чи це життєво важливо для …

8
Коли я дійсно повинен використовувати noexcept?
noexceptКлючове слово може бути відповідним чином застосовано до багатьох сигнатури функцій, але я НЕ впевнений , про те , коли слід розглянути можливість використання його на практиці. Виходячи з того, що я читав до цих пір, додавання в останню хвилину, noexceptздається, стосується деяких важливих питань, які виникають, коли конструктори руху …

11
Безіменні / анонімні простори імен та статичні функції
Особливістю C ++ є можливість створювати неназвані (анонімні) простори імен, наприклад: namespace { int cannotAccessOutsideThisFile() { ... } } // namespace Ви можете подумати, що така функція буде марною - оскільки ви не можете вказати назву простору імен, неможливо отримати доступ до чого-небудь всередині неї ззовні. Але ці безіменні простору …
507 c++  namespaces 

5
Відмінність ключових слів "typename" та "class" у шаблонах?
Для шаблонів я побачив обидві декларації: template < typename T > template < class T > Яка різниця? І що саме означають ці ключові слова в наступному прикладі (взятому з німецької статті Вікіпедії про шаблони)? template < template < typename, typename > class Container, typename Type > class Example { …
504 c++  templates  keyword 

23
Що швидше: розподіл стека або розподіл Heap
Це питання може здатися елементарним, але це дискусія, яку я мав з іншим розробником, з яким працюю. Я дбав про те, щоб розміщувати речі, куди міг, а не купувати їх. Він розмовляв зі мною і спостерігав за моїм плечем і коментував, що це не потрібно, тому що вони однакові. Я …
503 c++  performance  memory  stack  heap 

5
Чи допускає стандарт C ++, щоб неініціалізований bool збів програму?
Я знаю, що «невизначена поведінка» в C ++ може в значній мірі дозволити компілятору робити все, що завгодно. Однак у мене стався збій, який мене здивував, оскільки я припускав, що код досить безпечний. У цьому випадку справжня проблема траплялася лише на певній платформі з використанням конкретного компілятора, і лише за …

27
Запропоновано перевірити наявність функції члена класу?
Чи можна написати шаблон, який змінює поведінку залежно від того, чи визначена певна функція члена в класі? Ось простий приклад того, що я хотів би написати: template<class T> std::string optionalToString(T* obj) { if (FUNCTION_EXISTS(T->toString)) return obj->toString(); else return "toString not defined"; } Отже, якщо class Tвін toString()визначив, то він його …



8
без підпису int vs. size_t
Я зауважую, що сучасний код C і C ++, здається, використовується size_tзамість int/ unsigned intв значній мірі скрізь - від параметрів для C рядкових функцій до STL. Мені цікаво, що є причиною цього та користю, яку він приносить.
492 c++  c  size-t 


11
Як перерахувати символи у файлі .so
Як перерахувати символи, що експортуються з файлу .so? Якщо можливо, я також хотів би дізнатися їх джерело (наприклад, якщо вони витягнуті зі статичної бібліотеки). Я використовую gcc 4.0.2, якщо це має значення.
485 c++  c  gcc  symbols  name-mangling 

9
Чому мають заголовки та .cpp файли? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …
484 c++  header-files 

16
Як я можу перетворити std :: string в int?
Просто швидке запитання. Я переглянув Інтернет досить небагато і знайшов кілька рішень, але жодне з них ще не працювало. Дивлячись на перетворення рядка в int, і я не маю на увазі коди ASCII. Для швидкого запуску ми передаємося в рівняння як рядок. Ми повинні розбити її, відформатувати її правильно та …
484 c++  string  int 


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