How to change actor class static mesh after spawned?

What would be the best way to swap the static mesh an actor class references for another static mesh? Is it possible to do so after I’ve spawned like so?

ADynamicCell* DynCellA = World->SpawnActor<ADynamicCell>(ADynamicCell::StaticClass(), loc, facing);

Could I do this through a template of this actor class and have the static mesh/ material as parameters?

Okay so I followed this link and I have a template setup now that appears to work same as the normal spawn only that I can make little changes to the template information when I call the above spawnBP function. What I can’t figure out is how to pass a new static mesh through this function to use as the swap mesh.

This loads into the editor but crashes when I play the game

AMasterStaticList* Master = UIcoStaticClass::SpawnBP<AMasterStaticList>(World, AMasterStaticList::StaticClass(), FVector::ZeroVector, FRotator::ZeroRotator); //Creates the actor
	TArray<UStaticMeshComponent*> Components;
	Master->GetComponents<UStaticMeshComponent>(Components);

for (int j = 0; j < 256; j++)
				{
					if (j % 2 == 0)
					{
						UStaticMeshComponent* StaticMeshComponent = Components[0];
						UStaticMesh* StaticMesh = StaticMeshComponent->StaticMesh;
						DynCellA->IcoCellA->SetStaticMesh(StaticMesh);
					}
					else
				{
					UStaticMeshComponent* StaticMeshComponent = Components[1];
					UStaticMesh* StaticMesh = StaticMeshComponent->StaticMesh;
					DynCellA->IcoCellA->SetStaticMesh(StaticMesh);
				}
				}

The above is attempting to alternate between one of two UStaticMesh components on an actor class. Each UStaticMeshComponent has a different mesh applied. I’m trying to transfer the static mesh from the Master which holds the two types of static meshes and place them into the static mesh slot of the DynCellA->IcoCellA

Okay, so I was able to switch static meshes pretty easily.

Actor class:
.h:
UPROPERTY()
FstaticMeshList testIcoCellA; // Just made a UStruct that has a TArray<UStaticMesh*>

.cpp:
UStaticMesh* Sphere = Cast(StaticLoadObject(UStaticMesh::StaticClass(), NULL, TEXT(“StaticMesh’/Game/Environment/Floor/DynamicCells/Sphere.Sphere’”)));
UStaticMesh* Torus = Cast(StaticLoadObject(UStaticMesh::StaticClass(), NULL, TEXT(“StaticMesh’/Game/Environment/Floor/DynamicCells/Torus.Torus’”)));
testIcoCellA.sMs.Add(Sphere);
testIcoCellA.sMs.Add(Torus);

Then I spawned the actor class:

AMasterStaticList* Master = UIcoStaticClass::SpawnBP(World, AMasterStaticList::StaticClass(), FVector::ZeroVector, FRotator::ZeroRotator);

Then swapped out my actors static mesh like so:

ActorName->ActorComponent->SetStaticMesh(Master->testIcoCellA.sMs[1]);