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

97
ошибка: аргумент по умолчанию указан для параметра 1

Я получаю это сообщение об ошибке с приведенным ниже кодом: class Money { public: Money(float amount, int moneyType); string asString(bool shortVersion=true); private: float amount; int moneyType; }; Сначала я подумал, что параметры по умолчанию не разрешены в качестве первого параметра в C ++, но...

97
Как виртуальное наследование решает «ромбовидную» (множественное наследование) неоднозначность?

class A { public: void eat(){ cout<<"A";} }; class B: virtual public A { public: void eat(){ cout<<"B";} }; class C: virtual public A { public: void eat(){ cout<<"C";} }; class D: public B,C { public: void eat(){ cout<<"D";} }; int main(){ A *a = new D(); a->eat(); } Я...

97
Qt поддерживает виртуальные чистые слоты?

В моем проекте с графическим интерфейсом Qtесть много классов "страниц конфигурации", которые все наследуются непосредственно отQWidget . Недавно я понял, что все эти классы имеют 2 общих слота ( loadSettings()и saveSettings()). По этому поводу у меня два вопроса: Имеет ли смысл писать...

97
Как преобразовать std :: string в NSString?

Привет, я пытаюсь преобразовать стандарт std::stringв формат, NSStringно мне не очень везет. Я могу успешно преобразовать из NSStringa std::stringв следующий код NSString *realm = @"Hollywood"; std::string REALM = [realm cStringUsingEncoding:[NSString defaultCStringEncoding]]; Однако я получаю...

97
События Qt и сигналы / слоты

В мире Qt в чем разница событий и сигналов / слотов? Одно заменяет другое? События - это абстракция сигналов / слотов?

97
Почему следует избегать кастинга? [закрыто]

Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 4 года назад . Уточните этот вопрос Я обычно стараюсь избегать типов...

97
Что означает термин «свободная функция» в C ++?

Читая документацию по boost :: test, я натолкнулся на термин «бесплатная функция». Я понимаю, что бесплатная функция - это любая функция, которая ничего не возвращает (ее тип возврата - void). Но после прочтения кажется, что бесплатные функции также не принимают никаких аргументов. Но я не уверен....

97
Как перетасовать std :: vector?

Я ищу универсальный способ многоразового перетасовки std::vectorв C ++. Вот как я сейчас это делаю, но я думаю, что это не очень эффективно, потому что ему нужен промежуточный массив, и он должен знать тип элемента (DeckCard в этом примере): srand(time(NULL)); cards_.clear(); while (temp.size()...

97
Эффективность преждевременного возврата в функцию

Это ситуация, с которой я часто сталкиваюсь как неопытный программист, и меня это интересует, особенно для моего амбициозного, требовательного к скорости проекта, который я пытаюсь оптимизировать. Для основных C-подобных языков (C, objC, C ++, Java, C # и т. Д.) И их обычных компиляторов будут ли...

97
Когда использовать инициализатор в фигурных скобках?

В C ++ 11 у нас есть новый синтаксис для инициализации классов, который дает нам большое количество возможностей для инициализации переменных. { // Example 1 int b(1); int a{1}; int c = 1; int d = {1}; } { // Example 2 std::complex<double> b(3,4); std::complex<double> a{3,4};...

97
Использование emit против вызова сигнала, как если бы это была обычная функция в Qt

Допустим, у меня есть такой сигнал: signals: void progressNotification(int progress); Я только недавно узнал о ключевом слове emit в Qt. До сих пор я использовал сигналы, просто вызывая их как обычную функцию. Так что вместо: emit progressNotification(1000 * seconds); Я бы написал:...

97
Агрегат Qt c ++ 'std :: stringstream ss' имеет неполный тип и не может быть определен

В моей программе есть эта функция, которая преобразует целые числа в строки: QString Stats_Manager::convertInt(int num) { stringstream ss; ss << num; return ss.str(); } Но когда я запускаю это, я получаю сообщение об ошибке: aggregate 'std::stringstream ss' has incomplete type and cannot be...

97
Реализация лямбда-выражения C ++ 11 и модель памяти

Мне хотелось бы получить некоторую информацию о том, как правильно думать о замыканиях std::functionв C ++ 11, о том, как они реализованы и как обрабатывается память. Хотя я не верю в преждевременную оптимизацию, у меня есть привычка тщательно учитывать влияние моего выбора на производительность...

97
Почему sizeof int неправильный, а sizeof (int) правильный?

Мы знаем, что sizeofэто оператор, используемый для вычисления размера любого типа данных и выражения, и когда операнд является выражением, скобки можно опустить. int main() { int a; sizeof int; sizeof( int ); sizeof a; sizeof( a ); return 0; } первое использование sizeofневерно, тогда как другие...

97
Разница между std :: system_clock и std :: stable_clock?

В чем разница между std::system_clockи std::steady_clock? (Примерный случай, иллюстрирующий разные результаты / поведение, был бы отличным). Если моя цель - точно измерить время выполнения функций (например, эталонный тест), что будет лучшим выбором между std::system_clock, std::steady_clockи...

97
Как проверить тип параметра шаблона?

Предположим, у меня есть шаблонная функция и два класса class animal { } class person { } template<class T> void foo() { if (T is animal) { kill(); } } Как мне проверить, является ли T животное? Я не хочу, чтобы что-то проверяло во время выполнения. Благодарность...

97
<cstdint> против <stdint.h>

В чем разница между stdint.hи cstdint? Оба они доступны в MSVC (Visual Studio 2010) и gcc-4.5.1. Также оба определяют intX_t/ uintX_tтипы (где Xразмер в байтах типа). Если обоснование в обоих заголовках одинаково (переносимые типы), какие решения я должен принять, чтобы выбрать тот или другой? В...