对象指针赋值指针向量的元素

use*_*757 1 c++ pointers vector object variable-assignment

我无法将对象指针的指针向量元素分配给对象指针.我在Linux上并使用Eclipse IDE.如果你想看看我的问题:

void Parse::parseDatalogProgram(vector<Token*>* tokens)
{
    Token* currentToken = tokens[0];
...
}
Run Code Online (Sandbox Code Playgroud)

我收到一个语法错误,说"在初始化时无法将'std :: vector'转换为'Token*'",虽然上面看起来并不像那样如何正确解决这个问题?

Luc*_*ore 5

tokens是一个指针,而不是一个vector自己.你可以做

tokens->operator[](0);
Run Code Online (Sandbox Code Playgroud)

要么

(*tokens)[0];
Run Code Online (Sandbox Code Playgroud)