Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
hoggy
Заблокирован
#1

[c++][rvalue][array] bug compiler visual studio? - C++

03.10.2017, 16:59. Просмотров 195. Ответов 3

добрый день.

следующий код работает в gcc/clang, и не работает в студиях (2015/2017)

C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
    int v[2];
     
    std::move(v);
}
Код
error C2440: 'return': cannot convert from 'int [2]' to 'int (&&)[2]'
note: You cannot bind an lvalue to an rvalue reference
note: see reference to function template instantiation 
'int (&&std::move<int(&)[2]>(_Ty) noexcept)[2]' being compiled
        with
        [
            _Ty=int (&)[2]
        ]
Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23506 for x64
собственно вопросы простые:

опять студия налажала?

возможно ли вообще как то создать/проинициализировать чем то осмысленным 'int (&&)[2]' так,
что бы потом студийный компиль это успешно скомпилировал?
http://www.cyberforum.ru/cpp/thread2062278.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2017, 16:59
Я подобрал для вас темы с готовыми решениями и ответами на вопрос [c++][rvalue][array] bug compiler visual studio? (C++):

Codeblocks. Can't find compiler executable in your configured search path's for GNU GCC COMPILER
&quot;Can't find compiler executable in your configured search path's for GNU GCC...

Visual Studio vs Visual Studio
Скажите какую версию лучше приобрести, учитывая что 2010 у меня очень зависает....

С++ vs. Visual Studio C++!
В чем разница между C++ и Visual Studio C++??

Visual Studio 2010
Кто нибудь пробовал??? Хочу узнать отзывы...

не устанавливается visual studio
выдает окно с надписью visual...

3
ForceGuard
15 / 15 / 8
Регистрация: 01.10.2017
Сообщений: 97
03.10.2017, 18:51 #2
C++
1
2
 int v[4] = { 1,2,3,4 };
 auto rf = std::move(std::ref(v));
так собирается и rf присваивается значение v. студия 2015.
0
Someone007
1928 / 1614 / 721
Регистрация: 09.05.2015
Сообщений: 4,012
Завершенные тесты: 1
03.10.2017, 18:57 #3
Ваш код компилится в студии без ошибок. VS2017 (Version 15.3.5). Версия компилятора 19.11.25508.2.
0
hoggy
Заблокирован
03.10.2017, 19:46  [ТС] #4
Цитата Сообщение от ForceGuard Посмотреть сообщение
так собирается и rf присваивается значение v. студия 2015.
auto выводится как std::reference_wrapper<int [4]>
а это - немножко не то.

Цитата Сообщение от Someone007 Посмотреть сообщение
Ваш код компилится в студии без ошибок. VS2017 (Version 15.3.5). Версия компилятора 19.11.25508.2.
Цитата Сообщение от hoggy Посмотреть сообщение
Version 19.00.23506
понятно.

ну значит баг, который уже исправили.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2017, 19:46
Привет! Вот еще темы с решениями:

treeView Visual studio
помогите с записью в файл ! есть такие классы и методы template&lt;typename...

Problem with Visual Studio 10
Начал писать на OpenGL написал инициализацию (писал без тестовых компиляций)...

Ищу аналог Visual Studio
Интересует аналоги Visual Studio, как под винду, так и под linux. Требование -...

Win32 in Visual Studio 2008
Я в С++ полный ноль, но хотелось бы создать простое приложение с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru