#include <iostream>
class overload_oper {
public:
overload_oper& operator,(const int value) { data[cur++] = value; return *this; }
overload_oper& operator=(const int value) { data[cur++] = value; return *this; }
const int& operator[](const size_t idx)const { return data[idx]; }
private:
size_t cur = 0;
int data[5];
};
int main()
{
overload_oper op;
op = 1,2,3,4,5;
for(size_t n=0; n!=5; ++ n)
std::cout << op[n] << ", ";
}
I2luY2x1ZGUgPGlvc3RyZWFtPgogCmNsYXNzIG92ZXJsb2FkX29wZXIgewpwdWJsaWM6CiAgICBvdmVybG9hZF9vcGVyJiBvcGVyYXRvciwoY29uc3QgaW50IHZhbHVlKSB7IGRhdGFbY3VyKytdID0gdmFsdWU7IHJldHVybiAqdGhpczsgfQogICAgb3ZlcmxvYWRfb3BlciYgb3BlcmF0b3I9KGNvbnN0IGludCB2YWx1ZSkgeyBkYXRhW2N1cisrXSA9IHZhbHVlOyByZXR1cm4gKnRoaXM7IH0KICAgIGNvbnN0IGludCYgb3BlcmF0b3JbXShjb25zdCBzaXplX3QgaWR4KWNvbnN0IHsgcmV0dXJuIGRhdGFbaWR4XTsgfQpwcml2YXRlOgogICAgc2l6ZV90IGN1ciA9IDA7CiAgICBpbnQgZGF0YVs1XTsKfTsKIAppbnQgbWFpbigpCnsKICAgIG92ZXJsb2FkX29wZXIgb3A7CiAgICBvcCA9IDEsMiwzLDQsNTsKICAgIAogICAgZm9yKHNpemVfdCBuPTA7IG4hPTU7ICsrIG4pCiAgICAgICAgc3RkOjpjb3V0IDw8IG9wW25dIDw8ICIsICI7Cn0=