Voila une méthode dans une classe
Comment puis je initialiser la valeur de la variable statique I à -1 ? (Par défaut il est a 0) ?Code:
1
2
3
4
5
6
7 public sub Methode_Evenement () Static I as Long I = I + 1 end sub
Version imprimable
Voila une méthode dans une classe
Comment puis je initialiser la valeur de la variable statique I à -1 ? (Par défaut il est a 0) ?Code:
1
2
3
4
5
6
7 public sub Methode_Evenement () Static I as Long I = I + 1 end sub
A mon avis il va y avoir des remarques sur le titre du sujet.
Je ne comprends pas le code.
La variable i est locale à cette procédure.
Elle peut donc l'intialiser comme elle le veut
Merci de changer ton titre car il ne veut rien dire.
Merci de ta compréhension.
Et d'éviter le MULTI POST
A lire impérativement :
Le guide de dvp
Les règles
:D Effectivement, le titre ne suit aucune règle du forum !
Change-le stp et nous te répondrons !
merci :wink:
Sans plus de précisions de ta part, je dirais :
La question est fort simple, mais je ne ferais pas la fine bouche. Je t'envoie par MP mes coordonnées pour que tu puisses me verser les 2000 € de prime!Code:
1
2
3
4
5
6 public sub Methode_Evenement () Static I as Long I = - 1 I = I + 1 end sub
Plus sérieusement, tu peux passer par un paramètre pour forcer l'initialisation :
Code:
1
2
3
4
5
6
7
8
9
10 Public Sub Method(Reset as Boolean = False) Static I as Long If reset Then I = - 1 Else I = I + 1 End if End Sub
tout dépend si tu augmente ton i de plus que 1
tu peux faire ceci
ici ton X doit etre > 1 car sinon ta var va tjrs etre 0Code:
1
2
3
4 static i as long if (i = 0) then i = -1 i = i + X
sinon tu peux utiliser ceci
cependant le type est variant, sauf que c'est la seule chose que isempty accepteCode:
1
2
3
4
5
6 Static I If (IsEmpty(I)) Then I = -1 I = I + 1
Salut a tous !
Pour le titre je sais pas le changer donc si vous le dites comment faire je le change !
Mais sino c'est vraiment ca , c'est une question a 2000 Euros.
Sérieusement maitenant,
Shwin: ton code ne peut pas marcher car dans ce cas la variable sera réinitialiser a chaque passage dans la méthode, ce que je ne veux pas du tout faire.Sinon l'astuce avec la Variant me semble pas mal je vais tester
CatBull: ma méthode est un évenement donc je ne peux rien faire au niveau des argyments ..
Merci a tous
Change de titre, et je t'explique comment y arriver évènement ou pas évènement...
Moi aussi je veux jouer!
Ton titre est plutot osé.
Bonne question comment peut-on initialiser une variable de classe en VB ?
N'y a t il pas de constructeur en VB ?
Eh, les modérateurs mettez lui une giffle à loverdose et changé lui son titre s'il ne sait pas le faire!
Regardes ton premier post dans ce topic, le bouton EDITER est ton ami (c'est pourtant pas compliqué)Citation:
Envoyé par loverdose
Titre modifier par mes soin, sinon on va attendre jusqu'a Noel, mais gare, la prochaine fois, je verrouille
la méthode de shwin n'est pas loin du compte :
un variant voit son type affecté en même temps que les données sous VB
devrait donc permettre de profiterCode:
1
2 i = IIf(IsEmpty(i), CLng(IsEmpty(i)), i + 1)
- de l'initialisation à Empty du variant autorisant l'initialisation à -1 , et
- d'une déclaration en tant que Long.
on fait 50/50 shwin ? 1000€ chacun
Merci je retiens ! :wink:Citation:
Salut a tous !
Pour le titre je sais pas le changer donc si vous le dites comment faire je le change !
Regardes ton premier post dans ce topic, le bouton EDITER est ton ami (c'est pourtant pas compliqué)
Mais j'hallucine au fait vous etes tous motivé que par l"argent ici !!! :P
Bon je pense que la méthode avec la Variant est la meilleure et la plus propre.Sinon on m'a proposé ceci aussi mais bon je trouve que c'est moins propre ...
Je trouves ca moins propre car je suis obligé de créer une variable pour pouvoir en initialiser une autre ![/code]Code:
1
2
3
4
5
6
7
8
9
10
11 Public sub My Methode () Static I as Long Static tmp as Boolean If Not tmp then I = -1 tmp = True End If End Sub
pas de problème :)Citation:
Envoyé par DarkVader
loverdose, j'accept paypal :wink:
Et moi qui me suis cassé le trognon pour répondre sur le message original. Le 'party', c'est ici à ce qu'il parraît! Hé! les gars! les 2000 Euros sont pour moi!
Cette récompense me revient de droit : j'ai répondu le premier et réclamé le premier. J'suis un vrai chasseur de prime :zekill:
Pour ce qui est de l'élégance, la méthode de DarkVader et de Shwin est loin d'être parfaite. L'utilisation d'un variant pour une variable entière... je l'aurais cette prime :wink:
Quand les modos partent en vrille ...mdr :)Citation:
CatBull,Shwim,DarkVader
je pense qu'il est temps de fermer la question maintenant car ca commence a devenir torp business a mon gout ! :wink:
Au fait a la place des 2000 euros je peux pas payer en nature plutot ?
:D
Bon c'est bon ! allez RESOLU !
Merci a tous :wink: