Вопросы по теме 'c++11'
Реализация атомарного шаблона C ++ 0x
Я знаю, что аналогичный шаблон выходит в Intel TBB, кроме того, я не могу найти никакой реализации в Google или в библиотеке Boost.
6516 просмотров
schedule
02.05.2024
Пример списка инициализаторов C++0x
Я хотел бы посмотреть, как этот пример существующего кода сможет использовать функцию списка инициализаторов C++0x.
Пример0:
#include <vector>
#include <string>
struct Ask {
std::string prompt;
Ask(std::string...
10847 просмотров
schedule
31.12.2023
Можно ли эмулировать nullptr в gcc?
Я видел, что nullptr был реализован в Visual Studio 2010. Мне нравится эта концепция, и я хочу начать использовать ее как можно скорее; однако GCC пока не поддерживает его. Мой код должен работать на обоих (но не должен компилироваться с другими...
19358 просмотров
schedule
24.10.2022
Тернарный оператор
Почему компилятор не может специализировать эту функцию и есть ли способ заставить его это сделать? Я получаю сообщение об ошибке: Ошибка 1 error C2893: Не удалось специализировать шаблон функции "неизвестный тип" Тернарный::check(bool,Left,Right)'...
1041 просмотров
schedule
23.09.2022
Может ли кто-нибудь объяснить ссылки на rvalue в отношении исключений?
Допустим, у меня есть этот класс исключений:
struct MyException : public std::exception
{
MyException(const std::exception &exc) : std::exception(exc)
{
cout << "lval\n";
}
MyException(std::exception...
1310 просмотров
schedule
19.10.2022
c++0x: перегрузка по лямбда-арности
Я пытаюсь создать функцию, которую можно вызвать с помощью лямбды, которая принимает 0, 1 или 2 аргумента. Поскольку мне нужно, чтобы код работал как на g++ 4.5, так и на vs2010 (который не поддерживает вариативные шаблоны или лямбда-преобразования в...
2469 просмотров
schedule
21.09.2022
Поддержка std::atomic в g++ 4.4.3
Я использую g++ версии 4.4.3 в ОС Ubuntu. Согласно этой матрице здесь предполагается также поддержка std::atomic . Каждый раз, когда я использую
#include <atomic>
компилятор выдает мне ошибку и говорит error: atomic: No such file...
5407 просмотров
schedule
26.10.2022
Область действия лямбда-выражения
#include "stdafx.h"
#include <iostream>
using namespace std;
template<class Type>
struct X
{
void run()const
{//Why on earth this doesn't work?
[&]()
{
Type::alloc();
};
}
void...
1038 просмотров
schedule
25.01.2024
Сохранение указателя функции в std::function
Я пытаюсь написать оболочку С++ 0x вокруг dlopen()/dlsym() для динамической загрузки функций из общих объектов:
class DynamicLoader
{
public:
DynamicLoader(std::string const& filename);
template<class Signature>...
12033 просмотров
schedule
19.11.2022
static_assert для initializer_list::size()
Почему std::initializer_list<_E>::size не допускается в static_assert , хотя он объявлен как constexpr в моей libstdc++ (v. 4.6)?
Например, следующий код:
template<class T, int Length>
class Point
{
public:...
12827 просмотров
schedule
14.11.2023
Является ли стандартная библиотека С++ частью языка С++?
Является ли стандартная библиотека C++ частью языка C++? ( обратите внимание на "язык", а не на "стандарт"; конечно, оба являются частью стандарта ).
Если да, то почему? Если нет, то почему?
Ответ на этот вопрос может различаться в C++98,...
759 просмотров
schedule
12.10.2022
Нельзя использовать не, или, или плюс в качестве идентификатора?
Я попытался скомпилировать это:
enum class conditional_operator { plus, or, not };
Но, по-видимому, GCC (4.6) считает их особенными, хотя я не могу найти стандарт, в котором говорится, что это так (ни C++0x n3290, ни C99 n2794). Я компилирую...
369 просмотров
schedule
25.11.2022
Странная ошибка C2275, незаконное использование этого типа в качестве выражения с шаблоном функции-члена и лямбда-выражениями
Сводка
По какой-то причине мой шаблон функции-члена, который вызывает лямбда-функцию, не компилируется с ошибкой C2275... незаконное использование этого типа в качестве выражения , но когда функция перемещена в свободную функцию он...
7350 просмотров
schedule
05.12.2023
Получение имени типа шаблонного типа без определения класса
Я пытаюсь написать оболочку шаблона, которая работает с типом smart_ptr и в некоторых случаях должна вызывать исключение. В этом случае я хотел бы включить имя типа, который класс обертывает. Поскольку я работаю с интеллектуальными указателями,...
110 просмотров
schedule
05.11.2023
std::function и std::bind: что это такое и когда их следует использовать?
Я знаю, что такое функторы и когда их использовать с std алгоритмами, но я не понял, что Страуструп говорит о них в Часто задаваемые вопросы по C++11 .
Кто-нибудь может объяснить, что такое std::bind и std::function , когда их следует...
101393 просмотров
schedule
02.12.2023
Лямбда-выражения: проект n3290
Фраза из черновика ISO n3290: лямбда-выражения: раздел 5.1.2, параграф 6:
"The closure type for a lambda-expression with no
lambda-capture has a public non-virtual non-explicit const
conversion function to pointer to function...
234 просмотров
schedule
11.01.2024
Объединение хранилищ / загрузок последовательных атомарных переменных
Ссылаясь на (слегка устаревший) документ Автор Ганс Бём, в разделе «Атомные операции». В нем упоминается, что модель памяти (предложенная в то время) не помешает оптимизирующему компилятору объединить последовательность загрузок или сохранений...
368 просмотров
schedule
08.12.2023
Наследование шаблонных методов
У меня есть класс, подобный следующему:
class SomeClass
{
public:
template<typename... Args>
void doSomething(Args && ... args);
//... other methods etc.
};
Однако на самом деле я хочу иметь два...
10223 просмотров
schedule
15.04.2024
Имеет ли смысл использовать идиому перемещения и замены для подвижного и некопируемого класса?
Если у меня есть класс, например
class Foo{
public:
Foo(){...}
Foo(Foo && rhs){...}
operator=(Foo rhs){ swap(*this, rhs);}
void swap(Foo &rhs);
private:
Foo(const Foo&);
// snip: swap code
};
void swap(Foo&...
2001 просмотров
schedule
04.10.2022
Какую битовую хеш-функцию использует unordered_map?
Какой битовый хеш unordered_map из C++0x использует по умолчанию? Функция std::hash возвращает size_t . Означает ли это, что unordered_map использует 16-битную хеш-функцию?
308 просмотров
schedule
09.03.2024