c++- все статьи тега ➜ страница 28


Почему GCC предупреждает меня о провале, даже когда я использую [[fallthrough]]?

в следующем фрагменте кода я использую стандартный [[fallthrough]] атрибут из C++1z в документ, что требуется fallthrough: #include <iostream> int main() { switch (0) { case 0: std::cout << "an"; [[fallthrough]] case 1: std::cout << "bn"; break; } } С GCC 7.1, код компилируется без ошибок. Однако компилятор все равно предупреждает меня о провале: warning: this statement may fall through [-Wimplicit-f ...

Как реализовать big int в C++

Я хотел бы реализовать большой класс int в C++ в качестве упражнения по программированию-класс, который может обрабатывать числа больше, чем длинный int. Я знаю, что уже есть несколько реализаций с открытым исходным кодом, но я хотел бы написать свою собственную. Я пытаюсь понять, что такое правильный подход. Я понимаю, что общая стратегия-получить число в виде строки, а затем разбить его на меньшие числа (например, одиночные цифры) и поместить их в массив. На этот момент должен быть относит ...

Является ли Python быстрее и легче, чем C++? [закрытый]

Я всегда думал, что преимущества Python-это читаемость кода и скорость разработки, но время и использование памяти были не так хороши, как у C++. эта статистика поразило меня очень сильно. что ваш опыт говорит вам об использовании времени и памяти Python vs C++? ...

Ловить исключения нарушения прав доступа?

пример int *ptr; *ptr = 1000; могу ли я поймать исключение нарушения доступа к памяти с помощью стандартного C++ без использования каких-либо конкретных microsoft. ...

Как скомпилировать C++ с помощью Clang?

Я установил лязгом С помощью apt-get в Ubuntu, и я могу успешно компилировать файлы C с его помощью. Однако я понятия не имею, как скомпилировать C++ через него. Что мне нужно сделать для компиляции C++? ...

C++ Boost: неопределенная ссылка на boost:: system::generic category()

Я пытаюсь включить Boost библиотеки в моем проекте и сталкиваются с проблемами в том же. Я нахожусь на Ubuntu 12.10 с CodeBlocks IDE и попытался установить библиотеки вручную, читая инструкции с сайта, но получал ошибки с заголовком, а также с библиотеками, которые будут построены перед использованием. затем я установил библиотеки через terminalby sudo apt-get install libboost-all-dev. После этого в моих программах на Codeblocks я могу включать заголовки типа #include <boost/regex.hpp> н ...

Что не так с использованием goto? [дубликат]

Возможные Дубликаты:Почему плохо использовать goto?Гото все еще считается вредным? Я был ramdomming через xkcd и видел это (если также читать некоторые негативные тексты о них несколько лет назад): Что на самом деле с ним не так? Почему тогда goto даже возможно в C++? почему я должен не использовать их? ...

Опыт использования WT c++ framework? [закрытый]

кто-нибудь серьезно масс? это хорошо работает? испытывали ли вы определенные ограничения? Или преимущества? Wt - это библиотека C++ для разработки веб-приложений. пожалуйста, избегайте обсуждения того, является ли C++ хорошим языком для веб-разработки. Я просто хочу попробовать, потому что кажется, что это может быть весело. ...

Включить поддержку C++11 на Android

Как интегрировать C++11 В Android? ...

Функция, возвращающая лямбда-выражение

интересно, можно ли написать функцию, которая возвращает лямбда-функцию в C++11. Конечно, одна проблема заключается в том, как объявить такую функцию. Каждая лямбда имеет тип, но этот тип не может быть выражен в C++. Я не думаю, что это сработает: auto retFun() -> decltype ([](int x) -> int) { return [](int x) { return x; } } ни этот: int(int) retFun(); Я не знаю никаких автоматических преобразований из лямбд в, скажем, указатели на функции или некоторые такие. Является ли единст ...

Какова логика ключевого слова "using" в C++?

какова логика ключевого слова "using" в C++? Он используется в разных ситуациях, и я пытаюсь найти если все это имеет что-то общее и есть причина почему ключевое слово" using " используется как таковое. using namespace std; // to import namespace in the current namespace using T = int; // type alias using SuperClass::X; // using super class methods in derived class ...

Как получить расширение файла из string в C++

Дана строка "filename.conf", Как я могу проверить Часть расширения? Мне нужно кросс-платформенное решение. ...

Отключение предупреждений, генерируемых с помощью CRT SECURE NO DEPRECATE

каков наилучший способ отключить предупреждения, генерируемые через _CRT_SECURE_NO_DEPRECATE что позволяет им быть восстановлены с легкостью и будет работать в разных версиях Visual Studio? ...

Как прочитать значение из реестра Windows

учитывая ключ для некоторого значения реестра (например, HKEY_LOCAL_MACHINEblahblahfoo), как я могу: безопасно определить, что такой ключ существует. программно (т. е. с кодом) получают свою ценность. У меня нет абсолютно никакого намерения писать что-либо обратно в реестр (на протяжении всей моей карьеры, если я могу помочь). Таким образом, мы можем пропустить лекцию о каждой молекуле в моем теле, взрывающейся со скоростью света, если я напишу реестр неправильно. предпочитаю ответы на C ...

Наследование: 'A' является недоступной базой 'B'

$ cat inheritance.cpp #include <iostream> using namespace std; class A { }; class B : private A { }; int main() { A* ab = new B; } $ $ g++ inheritance.cpp inheritance.cpp: In function 'int main()': inheritance.cpp:9: error: 'A' is an inaccessible base of 'B' $ Я просто не понимаю эту ошибку. как я понимаю, и как в этом уроке подтверждает, что private наследование должно только изменить, как члены class B видны внешнему миру. Я думаю, что частный спецификатор делает больше, чем ...

cc1plus: ошибка: нераспознанный параметр командной строки "- std=c++11 " с g++

Я пытаюсь скомпилировать с помощью g++ и -std=c++11 или c++0x флаги. однако, я получаю эту ошибку cc1plus: error: unrecognized command line option "-std=c++11" g++ --version g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ...

Инициализация массива с++

это форма инициализации массива для всех 0s char myarray[ARRAY_SIZE] = {0} поддерживается всеми компиляторами? , если да, то есть ли подобный синтаксис для других типов? например bool myBoolArray[ARRAY_SIZE] = {false} ...

Шаблонная специализация одного метода из шаблонного класса

всегда учитывая, что следующий заголовок, содержащий мой шаблонный класс, включен по крайней мере в два .CPP файлы, этот код компилируется правильно: template <class T> class TClass { public: void doSomething(std::vector<T> * v); }; template <class T> void TClass<T>::doSomething(std::vector<T> * v) { // Do somtehing with a vector of a generic T } template <> inline void TClass<int>::doSomething(std::vector<int> * v) { // Do somtehing with a ...

Почему Летучий квалификатор используется через out std:: atomic?

из того что я читал от Херб Саттер и другие можно подумать, что volatile и параллельное программирование были полностью ортогональными понятиями, по крайней мере, в том, что касается C/C++. однако, в GCC реализация все std::atomic функции-члены имеют volatile квалификатор. То же самое верно и в Энтони Уильямсе реализация на std::atomic. так в чем дело, у меня atomic<> переменные должны быть volatile или нет? ...

Преобразование вектора в строку

у меня есть vector<int> контейнер, который имеет целых числа (например, {1,2,3,4}) и я хотел бы преобразовать в строку вида "1,2,3,4" что такое чистый способ сделать это в C++? В Python вот как я бы это сделал: >>> array = [1,2,3,4] >>> ",".join(map(str,array)) '1,2,3,4' ...