每次我尝试运行它时,都会遇到以下来自valgrind的错误:==13709== at 0x4EEED9B: std::string::assign(char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17)==13709==
==13709== I
我想将许多strings添加到vector中,根据我所发现的,在此之前调用reserve()是更有效的。对于vector of int,这是有意义的,因为int是4个字节,因此调用reserve(10)显然保留了40个字节。我知道字符串的数量,大约是60000。我该打电话给vector.reserve(60000)吗?编译器如何知道我的strings的大小,因为它不知道这些strings的长度是5还是500?