Uso Visual Studio 2013 Express.Il compilatore non si lamenta quando il vettore <char> && è associato al vettore <char> e
class B{
public:
vector<char>& a;
int& b;
B(vector<char>& i,int& c) :a(i),b(c) {}
};
int main(){
int l=3;
vector<char> h;
shared_ptr<B> bb (new B(std::move(h),l));
return 0;
}
Perché può essere accettato il codice? Quando ho cambiato l'argomento l a std :: mossa (l), il compilatore si lamenta "non in grado di convertire argomento 2 da 'int' a 'int &'".
Questo è un bug. Fallisce con g ++ 4.9.0 e clang ++ 3.4. – kec