c++ — вопросы с ответами

13 ответов
Я слышал недавний разговор Херба Саттера, который предположил, что причины перехода std::vector и std::string на const & в значительной степени исчезли. Он предположил, что предпочтительнее написать функцию, такую ​​как следующее: std::string do_something ( std::string inval ) { std::string r...
c++11
19 апр. 2012, в 14:37
4 ответа
Как теоретическая пиковая производительность четырех операций с плавающей запятой (двойная точность) за цикл будет достигнута на современном процессоре Intel x86-64? Насколько я понимаю, для большинства современных процессоров Intel требуется три цикла для SSE add и пять циклов для mul см., например...
optimization
architecture
assembly
05 дек. 2011, в 18:53
4 ответа
Я только что нашел комментарий в этом, отвечая тем, что использование iostream::eof в условиях цикла является "почти наверняка неправильным". Обычно я использую что-то вроде while(cin>>n), которое, как я предполагаю, неявно проверяет EOF, почему проверка того, что eof явно использует iostream:...
iostream
c++-faq
09 апр. 2011, в 12:37
31 ответ
У меня возникли трудности с компиляцией написанной мной программы на С++. Эта программа очень проста и, насколько мне известно, соответствует всем правилам, изложенным в стандарте С++. Я читал по всему ISO/IEC 14882: 2003 дважды, чтобы быть уверенным. Программа выглядит следующим образом: [IMG_OUR_...
clang
visual-c++
compiler-errors
01 апр. 2011, в 01:02
6 ответов
Этот FAQ относится к агрегатам и POD и охватывает следующий материал: Что такое Агрегаты? Что такое POD (Обычные старые данные)? Как они связаны? Как и почему они особенные? Какие изменения для С++ 11?
c++11
c++17
aggregate
pod
c++-faq
14 нояб. 2010, в 16:07
9 ответов
Мне нужно прочитать целый файл в памяти и поместить его в С++ std::string. Если бы я прочитал его в char[], ответ был бы очень простым: std::ifstream t; int length; t.open("file.txt"); // open input file t.seekg(0, std::ios::end); // go to the end length = t.tellg(); // report loca...
string
caching
file-io
standard-library
08 апр. 2010, в 18:28
17 ответов
Я видел код С++, сохраненный как файлы .cc, так и .cpp. Есть ли разница между двумя? Руководство по стилю Google, кажется, предлагает .cc, но не дает никаких объяснений. В основном я занимаюсь программами в Linux-системах.
filenames
09 окт. 2009, в 19:16
24 ответа
Как определить список файлов в каталоге из моего кода C или C++? Мне не разрешено выполнять команду ls и анализировать результаты из моей программы.
directory
file
04 март 2009, в 18:41
14 ответов
Компиляция С++ файла занимает очень много времени по сравнению с С# и Java. Для компиляции файла С++ требуется значительно больше времени, чем для запуска обычного размера Python script. В настоящее время я использую VС++, но это то же самое с любым компилятором. Почему это? Две причины, о которых я...
performance
compiler-construction
compilation
25 нояб. 2008, в 17:10
10 ответов
Возможный дубликат: С++ различие ключевых слов "typename" и" class in templates При определении шаблона функции или шаблона класса в С++ можно написать это: template <class T> ... или можно написать это: template <typename T> ... Есть ли веская причина предпочесть друг другу? Я при...
templates
17 окт. 2008, в 16:44
9 ответов
Каковы правила С++ для вызова конструктора суперкласса из подкласса? Например, я знаю в Java, вы должны сделать это как первую строку конструктора подкласса (и если вы этого не сделаете, предполагается неявный вызов суперструктора no-arg), что даст вам ошибку компиляции, если что отсутствует)....
inheritance
constructor
23 сен. 2008, в 12:37
18 ответов
Некоторое время назад я наткнулся на некоторый код, который помечал членную переменную класса с ключевым словом mutable. Насколько я вижу, это просто позволяет вам изменить переменную в методе const: class Foo { private: mutable bool done_; public: void doSomething() const { ...; d...
mutable
keyword
19 сен. 2008, в 21:47
9 ответов
Я слышал, что функция static_cast должна быть предпочтительней для C-стиля или простого кастомизации в стиле функции. Это правда? Почему?
casting
19 сен. 2008, в 18:19
30 ответов
Я работаю над Linux с компилятором GCC. Когда моя программа C++ дает сбой, я бы хотел, чтобы она автоматически генерировала трассировку стека. Моя программа запускается многими разными пользователями, а также работает на Linux, Windows и Macintosh (все версии скомпилированы с использованием gcc). ...
gcc
stack-trace
crash
assert
16 сен. 2008, в 20:27
9 ответов
У меня когда-то была задача определить следующие параметры производительности внутри запущенного приложения: Доступная общая виртуальная память Используемая виртуальная память Виртуальная память, используемая в настоящее время моим процессом Доступная общая оперативная память Используемая опер...
memory
cpu
15 сен. 2008, в 13:55
Наверх
Меню