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

C ++ - это язык программирования общего назначения. Первоначально он был разработан как расширение C и имеет аналогичный синтаксис, но теперь это совершенно другой язык. Используйте этот тег для вопросов о коде (который будет скомпилирован с помощью компилятора C ++). Используйте тег, зависящий от версии, для вопросов, связанных с конкретной редакцией стандарта [C ++ 11], [C ++ 14], [C ++ 17] или [C ++ 20] и т. Д.

3
В чем преимущество использования ссылок пересылки в циклах for на основе диапазона?
const auto&было бы достаточно, если я хочу выполнять операции только для чтения. Однако я наткнулся на for (auto&& e : v) // v is non-const пару раз за последнее время. Это заставляет меня задуматься: Возможно ли, что в некоторых непонятных угловых случаях есть некоторое преимущество в производительности при использовании ссылок …

12
Графический интерфейс с ручным кодированием по сравнению с графическим интерфейсом Qt Designer [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 2 года назад . Уточните этот вопрос Я провожу эти каникулы, учась писать …


10
Отключить одиночное предупреждение об ошибке
Есть ли способ отключить только одну строку предупреждения в файле cpp с помощью Visual Studio? Например, если я поймаю исключение и не обрабатываю его, я получаю ошибку 4101 (локальная переменная без ссылки). Есть ли способ игнорировать это только в этой функции, но в противном случае сообщить об этом в модуле …


23
Получить путь к исполняемому файлу
Я знаю, что этот вопрос задавался раньше, но я до сих пор не получил удовлетворительного ответа или однозначного «нет, это невозможно», поэтому я спрошу еще раз! Все, что я хочу сделать, это получить путь к исполняемому файлу, запущенному в данный момент, либо в виде абсолютного пути, либо относительно того, откуда …
115 c++  boost  executable 

1
Как можно вызвать std :: forward для всех аргументов в вариативной функции?
Я просто писал универсальную объектную фабрику и использовал мета-библиотеку препроцессора boost для создания вариативного шаблона (с использованием 2010, а он их не поддерживает). Моя функция использует ссылки rval иstd::forward выполняет идеальную пересылку, и это заставило меня задуматься ... когда выйдет C ++ 0X и у меня будет стандартный компилятор, я …

30
Скрытые возможности C ++? [закрыто]
В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, снова открыть, …

4
Обнаружено несоответствие для RuntimeLibrary
Я загрузил и извлек Crypto ++ в C: \ cryptopp. Я использовал Visual Studio Express 2012 для сборки всех проектов внутри (как указано в readme), и все было построено успешно. Затем я сделал тестовый проект в какой-то другой папке и добавил cryptolib в качестве зависимости. После этого я добавил путь …

6
Установка int в Infinity в C ++
У меня есть значение, int aкоторое должно быть равно "бесконечности". Это означает, что если int b = anyValue; a>b всегда правда. Есть ли какая-нибудь особенность C ++, которая могла бы сделать это возможным?
114 c++  infinity 

13
В C ++ мне нужно кэшировать переменные или позволить компилятору сделать оптимизацию? (Сглаживание)
Рассмотрим следующий код ( pимеет тип unsigned char*и bitmap->widthимеет некоторый целочисленный тип, который точно неизвестен и зависит от того, какую версию какой-либо внешней библиотеки мы используем): for (unsigned x = 0; x < static_cast<unsigned>(bitmap->width); ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } Стоит ли его оптимизировать …

2
Предполагается ли комитетом по стандартам C ++, что в C ++ 11 unordered_map уничтожает то, что вставляет?
Я только что потерял три дня своей жизни, отслеживая очень странную ошибку, когда unordered_map :: insert () уничтожает вставленную вами переменную. Это крайне неочевидное поведение наблюдается только в самых последних компиляторах: я обнаружил, что clang 3.2–3.4 и GCC 4.8 - единственные компиляторы, демонстрирующие эту «особенность». Вот небольшой сокращенный код из …
114 c++  gcc  c++11  clang  standards 

11
Умные указатели: кому принадлежит объект? [закрыто]
Трудно сказать, о чем здесь спрашивают. Этот вопрос неоднозначный, расплывчатый, неполный, чрезмерно широкий или риторический, и на него нельзя разумно ответить в его нынешней форме. Чтобы прояснить этот вопрос и снова открыть его, посетите Справочный центр . Закрыт 8 лет назад . С ++ - это все о владении памятью …

19
Как вырваться из петли внутри переключателя?
Я пишу код, который выглядит так: while(true) { switch(msg->state) { case MSGTYPE: // ... break; // ... more stuff ... case DONE: break; // **HERE, I want to break out of the loop itself** } } Есть ли прямой способ сделать это? Я знаю, что могу использовать флаг и выйти …

9
Что означает «int & foo ()» в C ++?
Когда я читал это объяснение lvalues ​​и rvalues, мне запомнились следующие строки кода: int& foo(); foo() = 42; // OK, foo() is an lvalue Я пробовал это в g ++, но компилятор говорит «неопределенная ссылка на foo ()». Если я добавлю int foo() { return 2; } int main() { …

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