Ponteiro de função de membro em C ++ for_each

Estou desenvolvendo uma pequena máquina virtual em C ++ para um projeto de escola, que deve funcionar como o comando dc, e é composta por um elemento de entrada e saída, um chipset, uma CPU e RAM. Atualmente, estou trabalhando no chipset, no qual implementei uma pequena classe de análise para poder obter algumas instruções Asm de entrada ou arquivo padrão e, em seguida, enviar essas instruções para a CPU.

O problema é: minhas instruções são classificadas em uma lista std :: e eu gostaria de poder empurrá-las cada uma com uma instrução foreach. Para fazer isso, preciso poder chamar minha função de membro "push_instruction" como o ponteiro de função F de for_each; e não consegui encontrar o truque para fazer isso ...

Alguma ideia? aqui está o meu código:

/*
** Function which will supervise
** the lexing and parsing of the input (whether it's std_input or a file descriptor)
** the memory pushing of operands and operators
** and will command the execution of instructions to the Cpu
*/
void                    Chipset::startExecution()
{
    /*
    ** My parsing 
    ** Instructions
    **
    */

    for_each(this->_instructList.begin(), this->_instructList.end(), this->pushInstruction);
}


void                    Chipset::pushInstruction(instructionList* instruction)
{
    if (instruction->opCode == PUSH)
      this->_processor->pushOperand(instruction->value, Memory::OPERAND, Memory::BACK);
    else if (instruction->opCode == ASSERT)
      this->_processor->pushOperand(instruction->value, Memory::ASSERT, Memory::BACK);
    else
      this->_processor->pushOperation(instruction->opCode);
}

questionAnswers(4)

yourAnswerToTheQuestion