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

101
Есть ли ошибки в регулярных выражениях в gcc 4.8 или более ранней версии?

Я пытаюсь использовать std :: regex в фрагменте кода C ++ 11, но похоже, что поддержка немного глючна. Пример: #include <regex> #include <iostream> int main (int argc, const char * argv[]) { std::regex r("st|mt|tr"); std::cerr << "st|mt|tr" << " matches st? " <<...

101
Что означает термин «арена» применительно к памяти?

Я читаю книгу о памяти как концепции программирования. В одной из последующих глав автор широко использует слово « арена» , но никогда не дает ему определения. Я искал значение этого слова и его отношение к памяти, но ничего не нашел. Вот несколько контекстов, в которых автор использует этот...

101
Использование {} в операторе case. Зачем?

Какой смысл в использовании {и }в caseзаявлении? Обычно, независимо от того, сколько строк в caseоператоре, выполняются все строки. Это просто правило относительно старых / новых компиляторов или за этим стоит что-то? int a = 0; switch (a) { case 0:{ std::cout << "line1\n"; std::cout...

101
Могу ли я реализовать на C ++ автономный тип члена self?

В C ++ отсутствует эквивалент ключевого слова PHPself , которое оценивает тип включающего класса. Достаточно легко подделать это для каждого класса: struct Foo { typedef Foo self; }; но мне пришлось писать Fooснова. Возможно, однажды я сделаю это неправильно и вызову тихую ошибку. Могу ли я...

101
Почему простая программа в стиле «Hello World» не компилируется с Turbo C ++?

Я начал изучать C ++ для своего класса программирования. Я скачал эту программу "Hello World": #include <iostream> using namespace std; int main() { cout << "Hello, World!"; return 0; } но Turbo C ++ жалуется: Error D:\HELLO.CPP 1: Unable to open include file 'IOSTREAM' Error...

100
Какова область действия объявления using в C ++?

Я использую объявление using в C ++, чтобы добавить std :: string и std :: vector в локальное пространство имен (чтобы не вводить ненужные символы std ::). using std::string; using std::vector; class Foo { /*...*/ }; Каков объем этого объявления? Если я сделаю это в заголовке, будет ли он...

100
Безопасное переопределение виртуальных функций C ++

У меня есть базовый класс с виртуальной функцией, и я хочу переопределить эту функцию в производном классе. Есть ли способ заставить компилятор проверить, действительно ли функция, объявленная в производном классе, переопределяет функцию в базовом классе? Я хотел бы добавить какой-нибудь макрос...

100
Препроцессор C ++ __VA_ARGS__ количество аргументов

Простой вопрос, на который я не нашел ответа в сети. В макросах с переменными аргументами, как найти количество аргументов? Я согласен с препроцессором ускорения, если у него есть решение. Если это имеет значение, я пытаюсь преобразовать переменное количество аргументов макроса, чтобы увеличить...

100
Вычисления с плавающей запятой и целочисленные на современном оборудовании

Я выполняю некоторую критическую для производительности работу на C ++, и в настоящее время мы используем целочисленные вычисления для задач, которые по своей сути являются плавающими, потому что «они быстрее». Это вызывает множество неприятных проблем и добавляет много надоедливого кода. Теперь я...

100
самый быстрый (с низкой задержкой) метод межпроцессного взаимодействия между Java и C / C ++

У меня есть приложение Java, которое через сокет TCP подключается к «серверу», разработанному на C / C ++. и приложение, и сервер работают на одном компьютере, в системе Solaris (но в конечном итоге мы рассматриваем возможность перехода на Linux). Тип обмена данными - простые сообщения (логин,...

100
Как быстрее всего вычислить sin и cos вместе?

Я хотел бы вычислить как синус, так и косинус значения вместе (например, для создания матрицы вращения). Конечно, я мог бы вычислить их отдельно, одно за другим a = cos(x); b = sin(x);, но мне интересно, есть ли более быстрый способ, когда нужны оба значения. Изменить: чтобы обобщить ответы на...

100
как мне инициализировать поплавок его максимальным / минимальным значением?

Как жестко запрограммировать абсолютное максимальное или минимальное значение для чисел с плавающей запятой или двойных чисел? Я хочу найти максимальное / минимальное значение массива, просто перебирая и выбирая самый большой. Есть также положительная и отрицательная бесконечность для поплавков,...

100
Разница между std :: result_of и decltype

У меня проблемы с пониманием необходимости std::result_ofв C ++ 0x. Если я правильно понял, result_ofиспользуется для получения результирующего типа вызова объекта функции с определенными типами параметров. Например: template <typename F, typename Arg> typename...

100
Как назначить псевдоним имени функции в C ++?

Создать новое имя для типа, переменной или пространства имен легко. Но как мне присвоить новое имя функции? Например, я хочу использовать имя hollerдля printf. #define очевидно ... иначе? Решения: #define holler printf void (*p)() = fn; //function pointer void (&r)() = fn; //function reference...

100
Неустранимая ошибка: «Нет целевой архитектуры» в Visual Studio

Когда я пытаюсь скомпилировать свой проект c ++ с помощью Visual Studio 2010 в режиме Win32 или x64, я получаю следующую ошибку: >C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture" Мои определения препроцессора говорят:...

100
Что такое время жизни std :: string :: c_str ()?

В одной из моих программ мне приходится взаимодействовать с устаревшим кодом, который работает с const char*. Допустим, у меня есть структура, которая выглядит так: struct Foo { const char* server; const char* name; }; Мое приложение более высокого уровня имеет дело только с ними std::string,...

100
Функция Sequence-zip для с ++ 11?

С новым циклом for на основе диапазона мы можем писать такой код, как for(auto x: Y) {} Какой IMO является огромным улучшением (например) for(std::vector<int>::iterator x=Y.begin(); x!=Y.end(); ++x) {} Можно ли использовать его для перебора двух одновременных циклов, например zipфункции...