Delegado Func<T> sem tipo de retorno: como usar Action em vez de Func?
Olá a todos! Acabei de começar a estudar C# e me deparei com uma situação confusa com delegados. Eu sei que existem os delegados embutidos `Func` e `Action`. Mas quando tento usar `Func` para um método que não retorna nada (void), recebo um erro de compilação.
Aqui está um exemplo de código que não funciona para mim:
```csharp
using System;
class Program
{
static void Main()
{
// Tento criar um delegado para um método que exibe texto
Func myDelegate = PrintMessage; // Erro!
myDelegate("Olá, mundo!");
}
static void PrintMessage(string message)
{
Console.WriteLine(message);
}
}
```
O compilador exibe o erro: "No overload for 'PrintMessage' matches delegate 'Func'" ou algo parecido. Eu entendo que...