我有一個關於在C++中std :: vector <>的性能的問題。通過調用clear()方法重用相同的矢量還是快速重新創建矢量更快?更快:重新創建或清除()?
下面的例子是沒有現實生活中的代碼,它只是爲了明確的問題是什麼:
//Example ONE: is this faster
std::vector<int> foo;
for(int i = 0; i < 100; ++i)
{
foo.clear();
for(int j = 0; j < 100; ++j)
{
foo.push_back(i+j);
}
}
//Example TWO: or is that faster?
for(int i = 0; i < 100; ++i)
{
std::vector<int> foo;
for(int j = 0; j < 100; ++j)
{
foo.push_back(i+j);
}
}
這些東西不是依賴於實現嗎? –
配置文件。 Boooooring! –
爲什麼所有的downvotes? – Daniel