O que são Structs?

2 respostas
csharp
MarkDev

Eu estava lendo a Documentação do C#
E me deparei com Classes & Structs .
Eu sei que as classes são um Modelo e que guardam a referencia a um objeto quando instanciamos e atribuimos seus valores aos atributos / propriedades , Mas é as Structs ?
Pelo que entendi as structs parecem ser um tipo de classe só que mais simples pois no seu bloco de código nós podemos usar Atributos / Métodos e até ter um construtor . E isso me deixou confuso sobre o que é um Struct .

2 Respostas

TerraSkilll

Falando de forma realmente simplificada, structs são como “classes limitadas/simplificadas”, como você mesmo concluiu. São ideais para representar “objetos simples”, como a própria documentação diz. No C#, tem limitações bem específicas, como não poderem herdar de classes nem serem derivadas (sem herança), não poderem ser nulos e serem passadas por cópia, não por referência (como objetos geralmente são).

Como muitas coisas nas linguagens de programação, é algo que você pode passar um bom tempo sem entender nem precisar, mas é uma ferramenta a mais que pode ser útil em certos cenários.

Abraço.

wldomiciano

E complementando: diferente das classes que como vc mesmo disse são referencias para um objeto, structs são valores de verdade e não referencias. Por mais que ele lembre uma classe, por debaixo dos panos ele é tratado como qualquer outro tipo primitivo como int ou float.

Criado 18 de janeiro de 2020
Ultima resposta 18 de jan. de 2020
Respostas 2
Participantes 3