In a simple example like the following:
struct MyClass {
    MyClass() {}
    MyClass(const MyClass&) {}
};
int main(){
    std::vector<MyClass> objects;
    MyClass obj1;
    objects.push_back(obj1);
    for (auto&& obj: object) {
    }
    return 0;
}
how does the auto&& work? The class doesn't have any move support, what is this code supposed to do? I don't understand..