请问一下大佬们,为什么会出现这样的问题?(代码本身并没有报错)

#include
#include
#include
#include"Helper.h"
int main()
{
//用C++11的列表初始化 创建Vector对象words1
std::vectorstd::string words1{ "Hello", "World!", "Welcome", "To", "C!" };
PRINT(words1);

//删除words1最后一个元素
words1.erase(words1.end() - 1);
PRINT(words1);

//在words1尾部追加元素
words1.push_back("C++!");
PRINT(words1);

//用迭代器拷贝words1的内容以创建words2
std::vector words2(words1.begin() + 2, words1.end());
PRINT(words2);

//在words2中插入元素
words2.insert(words2.begin(), "Hello!");
PRINT(words2);

//用拷贝构造创建words3
std::vector words3( words2 );
PRINT(words3);

//用[]修改words3的元素
words3[3] = "C Plus Plus";
PRINT(words3);

//初始化words4,初始化为多个相同的字符串
std::vector words4( 4, "C++!" );
PRINT(words4);

//words3与words4交换
//words3.swap(words4);
//PRINT(words3);
//PRINT(words4);
return 0;

}图片说明

std::vector改成std::vectorstd::string

std::vectorstd::string words1{ "Hello", "World!", "Welcome", "To", "C!" };

改成

std::vectorstd::string words1({"Hello", "World!", "Welcome", "To", "C!" });