BrainFuck Interpreter in C++
An malformed program (with misbalanced brackets) may cause an UB (e.g. popping back from an empty vector; or running out of program space in scanToEndOfLoops).
I recommend implementing step method:

void run() {
    while (progPointer &lt; program.size()) {
        step();
    }
}


with an intention to reuse it in a debugger.