【发布时间】:2013-11-25 13:28:55
【问题描述】:
我想在函数内创建一个字符串向量并在堆上为其分配内存。为此,我正在使用
vector<string>* residuetable = new vector<string>();
当我尝试这样做时
&residuetable.push_back(modulo((exponentiate("2", exponent02)), modulus));
即尝试使用push_back 函数将多个函数调用的返回值添加到向量中,我得到编译时错误
request for member 'push_back' in 'residuetable', which is of non-class type 'std::vector<std::string, std::allocator<std::string> >*
如何解决这个问题,并将函数调用的结果添加到堆上分配的向量的末尾?
【问题讨论】:
-
改为使用
*residuetable取消引用指针(也就是说,如果您想保留点语法)。 -
@ChrisO:或者更好的是,
**&residuetable也保留当前代码:-) -
@KerrekSB,我的立场是正确的。
标签: c++ vector heap-memory c++98