...est un type, mais il est utilisé comme une variable
Mon idée ici est de créer un texte basé sur le jeu d'aventure.
Je suis en train d'utiliser une classe dans ma classe principale.
Alors que j'essaie, il me donne l'erreur:
'MyAdventure.La fenêtre "est un" type "mais est utilisée comme une "variable"
Je ne suis pas sûr de la manière de résoudre ce problème. J'ai essayé de créer une nouvelle instance de la classe mais il n'a pas l'air de fonctionner.
Je suis assez nouveau à cela, mais quelqu'un pourrait s'il vous plaît aider?
Merci d'avance.
Voici le code de ma classe principale (le Programme.cs):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyAdventure
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("You cannot feel your body. You don't know where you are.\nThe room you're in is dark. You cannot see much.");
Console.WriteLine("You decide to stand up, and take a look around. You see a door and a window.\nWhich do you check out first?");
Console.WriteLine("A. Window\nB. Door");
string userInput = Console.ReadLine();
//Window theWindow = new Window();
if (userInput.StartsWith("A", StringComparison.CurrentCultureIgnoreCase))
{
Window();
}
else if (userInput.StartsWith("B", StringComparison.CurrentCultureIgnoreCase))
{
Console.WriteLine("You chose the door.");
}
Console.ReadKey();
}
}
}
Et c'est le code (pour l'instant) pour les autres de la classe de Fenêtre.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyAdventure
{
public class Window
{
static void theWindow()
{
Console.WriteLine("You approach the window.");
Console.ReadKey();
}
}
}
- Vous souhaitez
Window.theWindow()
. - Et aussi le rendre public: public static void regard par la fenêtre()
- Vous pouvez également séparer les données de code, mais je suppose que c'est une autre leçon.
Vous devez vous connecter pour publier un commentaire.
La bonne syntaxe pour appeler une méthode statique d'une classe est la suivante
Vous ne pouvez pas utiliser tout simplement le nom de la classe, mais vous devez spécifier la méthode statique d'appel (un de potentiellement un grand nombre de méthodes)
L'appel de méthodes statiques
Aussi la méthode "regard par la fenêtre" devrait être rendu public le contraire est privées par défaut à l'intérieur d'une classe
Vous pouvez avoir besoin d'appeler
theWindow()
est une méthode statique. Les membres statiques sont appelés commeClassName.MethodName()
, dans votre casWindow.theWindow()
Lorsque vous n'avez
Window theWindow = new Window();
, vous créez une instance de laWindow
classe. Les membres statiques ne peuvent pas y accéder à partir de l'instance d'une classe.Appeler cette méthode à partir d'une instance, vous devez supprimer le
static
modificateurUtilisation