Give this a try
UPROPERTY()
USkeletalMesh* NewMesh1;
UPROPERTY()
USkeletalMesh* NewMesh2;
AInv_Melee::AInv_Melee()
{
PrimaryActorTick.bCanEverTick = true;
TheSkeletalMeshComponent = CreateDefaultSubobject<USkeletalMeshComponent>(TEXT("My Skeletal Mesh Component"));
static ConstructorHelpers::FObjectFinder<USkeletalMesh> Mesh1(TEXT("SkeletalMesh'/Game/Models/Pickups/SkeletalMesh/Mesh1.Adze_Hammer_Head'"));
if(Mesh1.Object)
NewMesh1 = Mesh1.Object;
static ConstructorHelpers::FObjectFinder<USkeletalMesh> Mesh2(TEXT("SkeletalMesh'/Game/Models/Pickups/SkeletalMesh/Mesh2.Adze_Hammer_Head'"));
if(Mesh3.Object)
NewMesh2 = Mesh3.Object;
}
void AInv_Melee::NextMesh()
{
if (!bSwitch)
{
TheSkeletalMeshComponent->SetSkeletalMesh(NewMesh1);
}
else
{
TheSkeletalMeshComponent->SetSkeletalMesh(NewMesh2);
}
}