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' ...