Вызовите метод класса, чтобы уничтожить вызывающий его объект.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Вызовите метод класса, чтобы уничтожить вызывающий его объект.

Сообщение Anonymous »

Я разрабатываю игру на Unreal Engine 5.4.4 и C++ с использованием Visual Studio 2022.
Из класса символов я вызываю метод GameMode, который уничтожит этот класс символов, вызывающий этот метод:

Код: Выделить всё


void ASCharacter::OnDied(AActor* InstigatorActor)
{
ASGameModeBase* GameMode = GetWorld()->GetAuthGameMode();
if (GameMode)
{
GameMode->OnActorKilled(this, InstigatorActor);
}
}
Метод GameMode:

Код: Выделить всё

void ASGameModeBase::OnActorKilled(AActor* VictimActor, AActor* Killer)
{
ASCharacter* Player = Cast(VictimActor);
if (Player)
{
// Other code…
Player->Destroy();
}
}
Могут ли возникнуть какие-либо проблемы при вызове метода, который уничтожит вызывающий его класс?


Подробнее здесь: https://stackoverflow.com/questions/798 ... calling-it
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»