Oder muss ich std::make_unique
in irgendwelche Formen überhaupt werfen?Wie std :: make_unique zu werfen, so dass ich die Funktionen in der Klasse deklariert verwenden kann?
Ich habe eine FOO Klasse mit einigen Funktionen, die ich verwenden kann:
FOO::FOO(const yoo &yoo, float numbers) :
num_to_execute(numbers)
{
...
...
}
void FOO::execute()
{
execute(num_to_execute);
}
In einem anderen CPP, meine angegebenen Codes foo initiierte der folgenden Methode:
new_foo = std::make_unique<FOO>(yoo, number);
(bisher alles ist richtig). Was ich tun möchte ist, auf meinem new_foo auszuführen. Ich habe versucht, mit
new_foo.execute();
Aber es sagt:
error: 'class std::unique_ptr<WORK::TOBEDONE::FOO>' has no member named 'EXECUTE'
execute
sollte <WORK::TOBEDONE::FOO>
auf Mitglied genannt Lage sein, aber die std :: unique_ptr gibt mir eine harte Zeit zu verstehen, was ich tun soll.