#include <iostream>
#include <vector>

class point {
public:
    point(int x, int y)
        : x_(x)
        , y_(y)
    {
    }
    explicit operator std::vector<int>()
    {
        std::vector<int> vec;
        vec.push_back(x_);
        vec.push_back(y_);
        return vec;
    }

private:
    int x_;
    int y_;
};

int main()
{
    auto p = point(1, 2);
    auto vec = static_cast<std::vector<int>>(p);
    std::cout << vec[0] << '\n';
    std::cout << vec[1] << '\n';
}