template
void RandomSelect(std::vector& vec)
{
std::vector::const_iterator const_it = vec.begin(); //error: expected `;' before ‘const_it’
...
}
原因:对于语句std::vector::const_iterator const_it = vec.begin()来说,T是个未声明变量,因此编译器认为std::vector::const_iterator不是一个变量类型。
解决:typename std::vector::const_iterator const_it = vec.begin(); 显式声明std::vector::const_iterator为一个类型。
阅读(1627) | 评论(0) | 转发(0) |