2009-09-08 7 views
7

Comment appeler une variable d'une classe publique vers une autre classe publique en C#? Je:Appel d'une variable d'une autre classe

public class Variables 
{ 
    static string name = ""; 
} 

Je dois appeler à partir de:

public class Main 
{ 
} 

Merci pour l'aide à l'avance.

Utilisation d'une application de console.

Répondre

23

Ce serait tout simplement:

Console.WriteLine(Variables.name); 

et il doit être aussi publique:

public class Variables 
{ 
    public static string name = ""; 
} 
+0

J'ai essayé cela, et je reçois: Variables.nom est inaccessible en raison de son niveau de protection –

+1

êtes-vous sûr que vous avez ajouté le modifi public er. –

+0

Quand j'ai répondu, pour une raison quelconque, je n'ai pas vu le modificateur public que vous avez ajouté. Oui, ça a marché. Merci beaucoup :) –

2

Vous devez spécifier un modificateur d'accès à votre variable. Dans ce cas, vous le voulez public.

public class Variables 
{ 
    public static string name = ""; 
} 

Ensuite, vous pouvez utiliser la variable comme ceci.

Variables.name 
8

Je suggère d'utiliser une variable au lieu d'un champ public:

public class Variables 
{ 
    private static string name = ""; 

    public static string Name 
    { 
     get { return name; } 
     set { name = value; } 

    } 
} 

d'une autre classe, vous appelez votre variable comme ceci:

public class Main 
{ 
    public void DoSomething() 
    { 
     string var = Variables.Name; 
    } 
} 
+1

En fait, il serait préférable pour lui de ne pas avoir de variables dans une classe statique. – ChaosPandion

+1

pourquoi dites-vous cela ... pourquoi pas? –

+3

Il se peut que ce soit moi, mais je pense que c'est une bonne pratique de rendre les classes statiques complètement apatrides. – ChaosPandion

1
class Program 
{ 
    Variable va = new Variable(); 
    static void Main(string[] args) 
    { 
     va.name = "Stackoverflow"; 
    } 
} 
Questions connexes