初始化引用时出现错误
我正在尝试声明对整数列表的引用。当我编译时,我得到list<int>& current;
的expected '(' for function-style cast or type construction
错误,在那里我声明了一个引用。这里有什么问题?我看了一遍,这似乎是如何参考初始化。必须有一些我错过了,因为它不会编译。初始化引用时出现错误
#include <iostream>
#include <vector>
#include <list>
using namespace std;
int main() {
list<int> list;
list<int>& current;
current = list; // or just list<int>& current = list; both error
}
这不是你如何初始化引用。使用方法:
list<int>& current = <variable>; // list;
list
是变数名称的不好选择。
-
使用
list<int> list;
会导致编译器错误,因为你有:
using namespace std;
-
list
将是,即使你没有使用可怕的变量名using namespace std;
我建议删除using namespace std;
行,并为变量使用不同的名称。
std::list<int> my_list;
std::list<int>& current = my_list;
你确定这可以与名称'列表'重新定义为一个对象? –
@ Cheersandhth.-Alf,不,我认为不会。 –
所以当我有'list
引用对象的另一个名字,因此,所有引用必须initilized,你不能简单地写:整数& r;你应该写INT d; int&r = d; – AnatolyS