You're right about that, I'm sorry.
From a quick look:
Code
Question(string text, string choice1, string choice2, string choice3, string choice4, int answer)
{
setText(text);
setAnswer(answer);
setChoices(choice1,choice2,choice3,choice4);
}
In C++03 taking non-built-in types by value (or returning them as such) was terribly inefficient and almost always wrong. In C++11, you could use this idiom when you're certain an allocation is necessary, but then you should move from them immediately in the initializer list, not in the constructor body.
Code
Question(string text, string choice1, string choice2, string choice3, string choice4, int answer) :
_text(std::move(text)),
_choice1(std::move(choice1)),
_choice2(std::move(choice2)),
_choice3(std::move(choice3)),
_choice4(std::move(choice4)),
_answer(answer)
{}
You chose to represent choices as four variables, yet you implied that it's configurable. Why not take an array,vector, or initializer_list?
Code
~Question(){ }
That's hardly necessary.
Code
void display();
You break SRP right here. Not sure if you just wanted to get away with it because it's homework or because of a mistake, but in either case, I don't think newbies should be shown the wrong way.
Code
void display();
bool judge(int);
string getText();
int getAnswer();
void setText(string);
void setAnswer(int);
void setChoices(string,string,string,string);
Those should be inlined, and there's little point in defining them outside of the class definition (except for removing the implicit inline declaration, which is not what I'd want to happen)
Code
Game* g = new Game();
// ...
delete g;
You should never this in modern C++! Use std::unique_ptr. This is the worst thing about this code, because while other mistakes impact only performance or maintainability, using naked new & delete removes exception safety from your code (aside from requiring you to keep track of your allocations, another thing a lot of people do wrong because it's tedious and can and should be automated).
Code
cout << "Enter a question:";
cin >> text;
This will only read the first word, not the whole line/question.
Nothing else jumped at me, but a careful review may reveal more. I don't mention using const instead of constexpr as it's not exactly wrong, just a tad out of date.