Personally for me, using array subscript to access vector element is risky to me. What if you passed in some invalid index? You will get error definitely.
So my preferred approach in using vector is to use push_back method. The code maybe longer but at least I don't have to worry about invalid index issues as vector internal implementation will process accordingly.