Ключевое слово ʻauto` было перепрофилировано в C++11 для выведенного типа. При использовании для замены имени типа в объявлении инициализированной переменной переменной присваивается тот же тип, что и инициализатору. При использовании в качестве возвращаемого типа тип возвращаемого значения указывается как завершающий тип возвращаемого значения или выводится из возвращаемого выражения.
0 ответов

Быстрое нажатие кнопки огня

Я новичок в AutoHotKey, и я пытаюсь создать простой сценарий, который будет спамить f один раз каждые 16.66666666 миллисекунд, пока удерживаются Ctrl + F, только когда запущена определенная программа. Следующий скрипт ничего не делает: #Ifwinactive …
10 июл '18 в 03:05
1 ответ

Ошибка в gcc с параметрами const& template?

Рассмотрим этот код: #include <type_traits> template < int > struct II { }; template < const int& > struct RR { }; template < template <auto> typename Class, typename Type > struct Check : std::false_type { }; templ…
09 фев '17 в 09:43
1 ответ

Сделать авто стать ссылкой, если функция возвращает ссылку

Мне нужен следующий код для работы: class Parent{ public: virtual void fun(){throw 0}; }; class Child:public Parent{ public: virtual void fun(){/*Success*/}; }; Parent& getChild(){ return *(new Child()); } void main(){ auto child=getChild(); chi…
1 ответ

Переменная "auto", используемая в лямбда-выражении в собственном инициализаторе

Сегодня я нашел этот код #include <cstdio> auto terminal = [](auto term) { return [=] (auto func) { return terminal(func(term)); }; }; Удивительно, но GCC принимает это. Clang отвергает это, потому что он использует terminal в своем собственно…
05 сен '14 в 20:39
0 ответов

Почему существует различие между шаблоном и автоматическим удержанием типа для случая с краем std::initializer_list?

По сути, в C++11 есть три типа вывода типов: шаблоны auto decltype В большинстве случаев вычет типа auto и шаблоны, кажется, действуют таким же образом. Но есть один случай - когда мы устанавливаем auto переменная к значению, созданная инициализатор…
10 апр '15 в 15:20
2 ответа

Конструктор авто и копирования: что не так?

Рассмотрим следующий код: #include<queue> #include<type_traits> int main() { std::queue<int> q; auto p{q}; static_assert(std::is_same<decltype(q), decltype(p)>::value, "fail"); } Он прекрасно компилируется с GCC 5.1.0 (см. Зд…
07 апр '16 в 12:40
5 ответов

Тип возвращаемого значения лямбды может быть выведен по возвращаемому значению, так почему же функция не может?

#include <iostream> int main(){ auto lambda = [] { return 7; }; std::cout << lambda() << '\n'; } Эта программа компилирует и печатает 7.Тип возврата лямбда выводится в целочисленный тип на основе возвращаемого значения 7. Почему эт…
04 дек '13 в 05:13
1 ответ

Как заставить Clang 3.4 скомпилировать общие лямбды?

Компилятор в rextester говорит, что работает clang 3.4, а на странице поддержки языка clang говорится, что clang 3.4 поддерживает общие лямбда-выражения, но я не могу получить этот код для компиляции: int main() { auto genLambda = [](auto param) {}…
15 апр '14 в 04:11
4 ответа

Введите traits, чтобы различать const char[N] и std::string?

Как мне написать шаблон переменной, который принимает как const char[N]s, так и std::strings в качестве параметров, но выполняет различное поведение в зависимости от типа параметра? Пока что мой шаблон с вариадой выглядит следующим образом: template…
28 окт '13 в 16:04
1 ответ

Тип переменных в структурированном связывании

#include <type_traits> int main() { int arr[1] = { 6 }; auto& ref1 = arr[0]; static_assert( std::is_same_v<decltype( ref1 ), int&> ); //ok auto& [ ref2 ] = arr; static_assert( std::is_same_v<decltype( ref2 ), int> ); //…
24 ноя '18 в 19:22
0 ответов

Авто в качестве аргумента шаблона

template<typename> struct CL{}; CL<char> fnc(); int main() { CL<auto> cl=fnc(); //error } Почему это не правильно? В чем проблема вывести авто как символ?
12 апр '15 в 14:28
1 ответ

Противоречивые возвращаемые типы итераторов std::set

Это вторая ошибка компилятора сегодня, которая запутала меня. Так или иначе для кода ниже, gcc жалуется, что в коде есть функция, которая возвращает итератор return_iter возвращать конфликтующие типы std::_Rb_tree_iterator<const int*> а потом …
27 окт '16 в 15:17
1 ответ

Позволят ли аргументы шаблона C++17 с автоматической функцией ограничивать объекты std::function?

С появлением в C++17 функции не типовых аргументов шаблона с auto, можно будет реализовать std::function таким образом, чтобы можно было, например, поставить следующие функции: bool f(int n, double d) {} bool g(bool b, char c) {} bool h(bool b) {} в…
27 сен '16 в 14:19
1 ответ

Самый быстрый способ написать пост и автоматически синхронизировать его с 1000 сайтов

Я пишу плагин WordPress, который может публиковать сразу на нескольких сайтах. Когда я публикую сообщение или создаю пользователя или категорию на сервере, все содержимое будет синхронизироваться с клиентами с помощью метода отправки формы. Но код р…
02 сен '18 в 06:17
0 ответов

elb + автоматическое масштабирование в aws Nginx + .net core web-api

Я новичок в AWS балансировки нагрузки. В настоящее время я получил ошибку 504 и ошибку 502 от elb при запуске нагрузочного тестирования. Как правило, мой ответ API меньше 1 секунды, но когда я запускаю 2000 потоков в течение 10-30 минут, время ответ…
24 фев '19 в 16:52
3 ответа

Почему decltype требуется в C++11?

Я учусь "decltype" в C++ 11. Функция "auto" и "decltype" кажется дублированной, и я не понимаю, зачем нам нужен "decltype". Согласно вики, его основное предназначение - в общем программировании, где часто трудно или даже невозможно выразить типы, ко…
16 сен '13 в 15:34
1 ответ

Дубликаты узлов для xml

Следующий sql declare @head1 table (head_id uniqueidentifier) declare @sub1 table ( head_id uniqueidentifier, own_id int, own_field nvarchar(20)) declare @sub2 table ( head_id uniqueidentifier, own_id int, own_field nvarchar(20)) declare @unrelated …
22 июн '18 в 14:16
0 ответов

"автоматическая" разница между указателями и ссылками

Учитывая этот код: int& some_class::ret_ref(){ return this->some_integer; } int* some_class::ret_ptr(){ return &(this->some_integer); } int main(){ some_class c; auto p=c.ret_ptr(); auto r=c.ret_ref(); } Во время компиляции: p является…
25 июл '16 в 21:45
3 ответа

Автоматически переписывать C++11 auto ключевое слово в производные типы

Может быть странный вопрос, но есть ли какое-либо программное обеспечение, которое, имея кучу кода на C++11, извлекает все типы автоматически типизированных переменных и переписывает код с этими производными типами? А также для списков инициализатор…
29 фев '12 в 10:18
1 ответ

Для чего раньше использовался "auto"?

Я знаю, что до C++11 auto ключевое слово имело совершенно другое значение; это был спецификатор типа хранилища, указывающий объект, который имеет автоматический тип хранилища (то есть помещается в стек). Такова теория... Как бы вы на самом деле испо…
25 ноя '11 в 17:33