这是我的课程
class ContainerStack{
public:
int getCapacity();
int getSize();
const Container& at(int height);
void take(Container aContainer);
Container give();
private:
std::vector<Container> containers();
};
这是getCapacity()和getSize()方法
int ContainerStack::getCapacity(){
return containers.capacity();
}
int ContainerStack::getSize(){
return containers.size();
}
GCC编译所有内容都没有问题,但是使用Visual Studio 2017时,我得到一个 E0153表达式必须具有类类型错误。有什么办法解决吗?
答案 0 :(得分:5)
您将containers
定义为一个函数返回向量:
std::vector<Container> containers();
修复至:
std::vector<Container> containers;
为什么gcc会编译而msvc不能
我怀疑您在将代码从gcc移植到msvc as NathanOliver spotted时搞砸了。