When to use Class, when to use Reference?

Look at my Structure representing a weapon

My weapon has a sound and a mesh. Even though I never instantiate a mesh or a sound, I need to use a reference.
The weapons also fire a projectile. Why can’t I use a Reference here?
It makes sense that I need to use a class. But why do I need a reference for a sound/Mesh?

assets are different from actors. meshes, textures, and sounds are assets that are imported into the engine, while projectiles are actors that need to be spawned from a class. assets are not spawned, they are just loaded into memory whenever you spawn an actor that contains a component that references the asset.

assets are just data. unlike a projectile actor, they don’t have movement components or event graphs, and they cant be used on their own. they need to be referenced by a component in order to exist.