C++ C++;错误为什么不是';这不是向量输出吗?

C++ C++;错误为什么不是';这不是向量输出吗?,c++,string,vector,C++,String,Vector,我正在尝试输出路径向量,但它不会输出 int main(){ 向量路径;{“约翰”、“戴夫”、“彼得”、“查理”、“迈克尔”}; 排序(path.begin(),path.end()); 如果分号太多,请尝试此语法 vector<string> path {"John", "Dave", "Peter", "Charlie", "Michael"}; 输出: Peter 您得到了什么输出?退出,分段错误您的向量为空,访问其第5个元素是UB。即使更正了其他错误,您仍在尝试访问向量末

我正在尝试输出路径向量,但它不会输出

int main(){
向量路径;{“约翰”、“戴夫”、“彼得”、“查理”、“迈克尔”};
排序(path.begin(),path.end());

如果分号太多,请尝试此语法

vector<string> path {"John", "Dave", "Peter", "Charlie", "Michael"};
输出:

Peter

您得到了什么输出?退出,分段错误您的向量为空,访问其第5个元素是UB。即使更正了其他错误,您仍在尝试访问向量末尾以外的元素。您有5个元素,因此最大索引值为4。的可能重复(假设其他错误已修复)我如何让它在一个向量中输出30个字符串?@Oliver一种方法是使用循环。这个答案似乎非常彻底:
  vector<string> path {"John", "Dave", "Peter", "Charlie", "Michael"};
  sort(path.begin(), path.end());
  cout<< path[4] <<endl;
Peter