Результаты поиска по запросу "c++11"
Модель памяти C ++ и условия гонки на массивах символов
В основном у меня проблемы с пониманием этого: (из Bjarne FAQ) Однако большинство современных процессоров не могут читать или записывать один символ, они должны читать или писать целое слово, поэтому присваивание c на самом деле означает ...
Ошибка GCC с шаблонами переменных: «Извините, не реализовано: невозможно развернуть« Идентификатор ... »в список аргументов фиксированной длины»
Выполняя вариационное программирование шаблонов в C ++ 11 на GCC, время от времени я получаю сообщение об ошибке: «Извините, не реализовано: невозможно развернуть« Идентификатор ... »в список фиксированной длины». Если я удаляю «...» в коде, я ...
Гарантирует ли стандарт C ++ 11, что std :: atomic <> реализован как атомарная операция?
Я на перекрестке, я пытаюсь выбрать между структурой данных на основе блокировки мьютекса и структурой данных без блокировки (и, возможно, без ожидания). Копаясь немного глубже, я не нашел ни слова о том, что стандарт C ++ 11 поддерживает ...
Я упоминал об этом, и это представляет интересную и хитрую проблему оптимизации. В этих случаях используются два совершенно разных пути кода, поскольку один ДОЛЖЕН быть оценен во время компиляции, а другой - нет.
ользую gcc 4.6.1 и получаю интересное поведение, связанное с вызовомconstexpr функция. Эта программа работает очень хорошо и сразу распечатывает12200160415121876738. #include <iostream> extern const unsigned long joe; constexpr unsigned ...
ошибка constexpr во время компиляции, но без издержек во время выполнения
Существует хорошо известная хитрость, которая вызывает ошибку времени компиляции при вычисленииconstexpr функция, делая что-то вроде этого: constexpr int f(int x) { return (x != 0) ? x : throw std::logic_error("Oh no!"); }И если функция ...
Псевдоним шаблона C ++ 11 в качестве аргумента шаблона шаблона приводит к другому типу?
Мы наблюдали странное поведение при компиляции следующего исходного кода: template<template<class> class TT> struct X { }; template<class> struct Y { }; template<class T> using Z = Y<T>; int main() { X<Y> y; X<Z> z; z = y; // it fails here }Это ...
Это в основном вопрос личных предпочтений, однако, я чувствую, что решение (потенциальных) конфликтов имен в C ++ лучше всего делать с использованием пространств имен, так как именно в этом и заключается смысл существования пространств имен.
ли смысл делать что-то вроде этого: namespace status{ enum status{ ok, error }; }и использовать это такstatus::ok Или я должен сделать это: enum status{ status_ok, status_error };и использовать это такstatus_ok? Обновить:С C ++ 11 вы теперь ...
Код @IvanKush обновлен. Спасибо.
ожно создать рекурсивный вариационный шаблон для распечатки содержимого пакета paramater? Я пытаюсь с этим, но он не может скомпилировать: template <typename First, typename ...Args> std::string type_name () { ...
а также
у неstd::unordered_map<tuple<int, int>, string> просто работать из коробки? Утомительно определять хеш-функцию дляtuple<int, int>например, template<> struct do_hash<tuple<int, int>> { size_t operator()(std::tuple<int, int> const& tt) const {...} ...
Нет, перегрузка без параметров типа не имеет значения. Это все еще двусмысленно без этого.
вязано смой предыдущий пост [https://stackoverflow.com/questions/7108161/simple-variadic-template-function-cant-instantinate] , Я хотел бы знать, почему одна попытка решения не сработала. template <typename... T> /* A */ size_t num_args (); ...