visualization_msgs/Marker contains a points field, which is of type geometry_msgs/Point[]. That is an unbounded array (== list) of geometry_msgs/Points.
Lists in the ROS msg IDL are mapped to std::vectors for C++ (see wiki/msg - Message Description Specification - Array handling).
And std::vector has a push_back(..) method that in this case will take geometry_msgs/Point.