"Méthode" est utilisé comme un "type" d'erreur C#
Donc, j'ai ce bout de code, qui pour certaines raisons, ne compile pas, car il dit que je suis en utilisant une méthode de type....
Je pour une raison étrange, ne peut pas voir ce que c'est que c'est censé être mauvais, le seul article google m'a donné, a un article ici qui est moins que rien.
Donc ma question est, quel est le problème avec ce code:
static void Main() {
Application.Run(new stat_checker());
}
public stat_checker() {
}
public stat_checker()
, c'est que dans class stat_checker
ou (en supposant) class Program
? Dans ce dernier cas, il vous manque un type de retour, mais je doute que cela soit le cas étant donné que vous appelez new
.OriginalL'auteur | 2011-02-15
Vous devez vous connecter pour publier un commentaire.
La
Application.Run();
fonction prend une forme comme argument par exemple:Application.Run(new Form1());
OriginalL'auteur fady mohamed osman
Bien, vous êtes d'appel
new
sur elle, de sorte qu'il ressemble vous voulez déclarer un type appeléstat_checker
:Alternativement, si vous voulais appel
stat_checker
vous auriez besoin d'écrire:Mais vous aussi besoin de changer
stat_checker
être d'un type valide:Vous tentiez d'inclure ce code dans un type appelé
stat_checker
? Si oui, il devrait déjà fonctionner:Si vous pouviez nous dire lequel de ces scénarios, vous êtes en train d'essayer de réaliser, que pourrait l'aider. Je voudrais aussi vous suggère de commencer la suite .NET conventions de nommage, par exemple, à l'aide de
StatChecker
au lieu destat_checker
.Oui, mais "." est juste une façon de représenter une référence à l ' "objet". Il n'est pas dans une DLL.
OriginalL'auteur Jon Skeet
Il vous manque un type de retour dans votre définition de la méthode:
Sans type de retour de ce qui est considéré comme un constructeur de la
stat_checker
type. Donc, si vous avez l'intention de ce à un constructeur, il doit être mis dans une classe appeléestat_checker
.OriginalL'auteur Darin Dimitrov
Selon votre intention, vous devez faire une de deux choses.
Soit déclarer
stat_checker
comme une classe qui est uneForm
,Ou de déclarer
stat_checker
comme une méthode qui retourne unForm
et retirer lenew
,OriginalL'auteur Jeff Yates
Dans votre code, stat_checker est déclarée comme une méthode; la nouveau mot-clé est utilisé pour créer une instance d'un type (classe, etc) - les deux ne se mélangent pas.
Si stat_check est une méthode, puis perdre la Application.Exécuter(de nouveau ...) et viens de l'appeler directement.
Est-ce une application de console? Plus de détails de ce que vous essayez d'accomplir serait de nous aider à vous conseiller.
OriginalL'auteur Justin Denton
Le problème est que
stat_checked
est une fonction, pas un constructeur de classe pour un ApplicationContext classe, comme il doit être.Ce que vous devez faire est quelque chose de plus comme ceci:
Ensuite, vous pouvez instancier comme ceci:
Noter que votre StatChecker de classe a pour la mesure ou le retour ApplicationContext. La caractéristique "Forme" de la classe, par exemple, s'étend ApplicationContext qui est pourquoi il fonctionne.
OriginalL'auteur Teekin
Pourrait-il être aussi simple que de dépareillées espaces de noms Ils auraient besoin d'être le même dans les deux classes de l'utilisation de la non qualifiés de nouveaux stat_checker(). Cela m'a mordu une fois, qui est comment je suis arrivé ici... 😉
OriginalL'auteur Al C.