可能重複:
Why is it an error to use an empty set of brackets to call a constructor with no arguments?奇怪的編譯錯誤
小塊代碼代碼不能成功編譯上
微軟的Visual Studio 2005
#include <iterator>
#include <algorithm>
#include <vector>
#include <iostream>
int main()
{
std::vector<int> a;
std::istream_iterator<int> be(std::cin);
std::istream_iterator<int> en();
std::copy(be, en, std::back_inserter(a));
}
但這一個是好的
#include <iterator>
#include <algorithm>
#include <vector>
#include <iostream>
int main()
{
std::vector<int> a;
std::istream_iterator<int> be(std::cin);
std::istream_iterator<int> en; //Same to upon, only here less '()'
std::copy(be, en, std::back_inserter(a));
}
你得到的錯誤是什麼?正如喬布斯所說 - *只是不要這樣做!* :-) – littleadv