Variable créée avec "var". Comment ça marche au juste ?
Bonjour,
Je suis plutôt "old school" en ce qui concerne la déclaration et le typage des données.
Donc moi je suis resté à l'époque où on déclarait une variable de cette façon :
Code:
1 2
|
MyClass myinstance = new MyClass(parameters); |
Et donc, quand ma variable doit être une propriété :
Code:
1 2 3 4 5 6 7 8 9 10
|
class MyClass
{
AnotherClass myproperty;
void SomeMethod()
{
myproperty = new AnotherClass(parameters);
}
} |
Sauf que là, les temps changes, et poussent comme des champignons des déclarations que je pensais presque avoir compris, mais qui finalement m'échappent totalement.
Code:
1 2 3 4 5 6
|
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = myname,
}); |
Je sais pas comment, mais ça marche. Ma variable "service" me semble non typée (ça ressemble vachement à la déclaration javascript par exemple).
Et là, j'ai un cas où...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
class MyClass
{
private CalendarService service;
void SomeMethod()
{
var service = new CalendarService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = myname,
});
}
void AnotherMethod()
{
service.DoSomething();
}
} |
Et le joli message :
Warning 9 Field 'MyClass.service' is never assigned to, and will always have its default value null
Qu'est-ce que je fois faire pour corriger le problème ?
Car du coup, j'imagine que ma méthode "AnotherMethod" ne va jamais fonctionner...