|
| Static Fra : Dcasso |
Dato : 26-09-02 16:42 |
|
Hej
Er der nogle der kan forklare mig, hvornår det er fornuftigt at bruge
en static variabel i en funktion.
mvh
Dennis
| |
Jens Vestergaard (26-09-2002)
| Kommentar Fra : Jens Vestergaard |
Dato : 26-09-02 16:53 |
|
"Dcasso" <ikke@oplyst_pga_spam.dk> skrev i en meddelelse
news:6la6pussg9ppupek2qcg8ita7stbr3cluj@4ax.com...
> Hej
>
> Er der nogle der kan forklare mig, hvornår det er fornuftigt at bruge
> en static variabel i en funktion.
>
Function myFunc(Noget As Variant, Optional Nulstil As Boolean)
Static AntalGangeDenneFunktionErKaldt As Long
If Nulstil Then AntalGangeDenneFunktionErKaldt = 0
AntalGangeDenneFunktionErKaldt = AntalGangeDenneFunktionErKaldt + 1
.....
.....
If AntalGangeDenneFunktionErKaldt = 100 Then
.....
End If
End Function
Det kan naturligvis også laves på andre måder, men you asked for it....
--
mvh
Jens Vestergaard
www.railsoft.dk
--------
Indsæt v før snablen
| |
CADmageren (27-09-2002)
| Kommentar Fra : CADmageren |
Dato : 27-09-02 08:23 |
|
Private Function GetNewHandle() As String
Static Handle As Long
If Handle = 0 Then Handle = 10000
Handle = Handle + 1
GetNewHandle = Hex(Handle)
End Function
--
Leveret af:
http://www.kandu.dk/
"Vejen til en hurtig løsning"
| |
Verner Neumann (15-10-2002)
| Kommentar Fra : Verner Neumann |
Dato : 15-10-02 14:54 |
|
Hej
Variabler som er erklæret inde i en funktion, mister deres indhold når
funktionen forlades. Ved at erklære variablen Static, vil den beholde sit
indhold imellem de enkelte funktionskald. Det samme gælder for procedurer.
med venlig hilsen
Verner Neumann
"Dcasso" <ikke@oplyst_pga_spam.dk> wrote in message
news:6la6pussg9ppupek2qcg8ita7stbr3cluj@4ax.com...
> Hej
>
> Er der nogle der kan forklare mig, hvornår det er fornuftigt at bruge
> en static variabel i en funktion.
>
> mvh
> Dennis
| |
Tomas Christiansen (15-10-2002)
| Kommentar Fra : Tomas Christiansen |
Dato : 15-10-02 21:12 |
|
Verner Neumann skrev:
> Variabler som er erklæret inde i en funktion, mister deres indhold
når
> funktionen forlades. Ved at erklære variablen Static, vil den
beholde sit
> indhold imellem de enkelte funktionskald. Det samme gælder for
procedurer.
Er det en forklaring på "hvornår det er fornuftigt at bruge en static
variabel"?
Det var jo det, som Dennis/Dcasso spurgte om.
-------
Tomas
| |
Ove Hansen (16-10-2002)
| Kommentar Fra : Ove Hansen |
Dato : 16-10-02 07:30 |
|
"Tomas Christiansen" <toc-nospam-01@blikroer.dk> wrote in message
news:aohsqt$1i2g$1@news.cybercity.dk...
> Verner Neumann skrev:
> > Variabler som er erklæret inde i en funktion, mister deres indhold
> når
> > funktionen forlades. Ved at erklære variablen Static, vil den
> beholde sit
> > indhold imellem de enkelte funktionskald. Det samme gælder for
> procedurer.
>
> Er det en forklaring på "hvornår det er fornuftigt at bruge en
static
> variabel"?
> Det var jo det, som Dennis/Dcasso spurgte om.
>
> -------
> Tomas
Det synes jeg da i høj grad det er !!! Det er fornuftigt at bruge en
static, når du ønsker at bevare værdien, selvom funktionen forlades.
Svaret kan da ikke være bedre ?!?
/Ove
| |
Peter Lykkegaard (16-10-2002)
| Kommentar Fra : Peter Lykkegaard |
Dato : 16-10-02 10:45 |
|
Som svar på skriblerier nedfældet af Ove Hansen :
> Det synes jeg da i høj grad det er !!! Det er fornuftigt at bruge en
> static, når du ønsker at bevare værdien, selvom funktionen forlades.
> Svaret kan da ikke være bedre ?!?
Ville du bruge static i en class?
mvh/Peter Lykkegaard
| |
Tomas Christiansen (16-10-2002)
| Kommentar Fra : Tomas Christiansen |
Dato : 16-10-02 19:57 |
|
Ove Hansen skrev:
> Det synes jeg da i høj grad det er !!! Det er fornuftigt at bruge en
> static, når du ønsker at bevare værdien, selvom funktionen forlades.
> Svaret kan da ikke være bedre ?!?
Det jeg mente var at du i princippet citerede fra manualen
(hjælpeteksterne), uden at tage stilling til hvornår det er fornuftigt
at bruge static (og hvor når det ikke er).
Men okay, jeg antog måske helt forkert at manualen var blevet læst
inden spøgsmålet blev stillet her. Hvis det er tilfældet (altså "ikke
læst"), er dit svar jo en ganske udmærket start på en uddybende
diskussion.
-------
Tomas
| |
CADmageren ApS (16-10-2002)
| Kommentar Fra : CADmageren ApS |
Dato : 16-10-02 22:01 |
|
Hør venner.
Skulle vi ikke tage og finde kammertonen?
Vi besvarer spørgsmål, når vi mener at have noget fornuftigt at bidrage, og
håber ligeledes på hjælp når vi selv har brug for det!!
Det står jo alle frit for at benytte sig af besvarelserne.
Til Tomas Christiansen.: Jeg har leget med Basic siden Amstrad'en var
populær i firserne, og jeg kender da kun til en brøkdel af hvad der står i
manualerne. Det er jo netop det sjove ved programmering, at der hele tiden
dukker en nye metoder og muligheder frem. Hvis kravet for at deltage i denne
nyhedsgruppe er at man skal kunne VB udenad til mindste detalje, så tror jeg
ikke der er mange der kan deltage.
Der lod jeg vist ordene flyde, men skal vi ikke være enige om at bevare den
gode ånd i nyhedsgruppen??
Med venlig hilsen
Michael Christoffersen
| |
Tomas Christiansen (16-10-2002)
| Kommentar Fra : Tomas Christiansen |
Dato : 16-10-02 22:31 |
|
CADmageren ApS skrev:
> Til Tomas Christiansen.: Jeg har leget med Basic siden Amstrad'en
var
> populær i firserne, og jeg kender da kun til en brøkdel af hvad der
står i
> manualerne. Det er jo netop det sjove ved programmering, at der hele
tiden
> dukker en nye metoder og muligheder frem. Hvis kravet for at deltage
i denne
> nyhedsgruppe er at man skal kunne VB udenad til mindste detalje, så
tror jeg
> ikke der er mange der kan deltage.
Når dokumentationen kun er ét tryk på F1 væk, går jeg ud fra at DET i
det mindste er blevet læst inden man bruger _mange_ tastetryk og tid
på at lave et indlæg.
Hvis dokumentationen gemmer sig flere klik/tryk væk, kan være
svær/umulig at finde, er direkte forkert, synes jeg det er helt på sin
plads at citere/oversætte/rette dokumentationen.
Men i det konkrete tilfælde må jeg blankt erkende at min kommentar
ikke var på sin plads. Jeg havde opfattet emnet som uddebateret og
dermed besvaret, idet Dcasso ikke havde reageret på Jens Vestergaard
og CADmagerens svar. Når der så efter næsten 3 uger blot kommer en
_næsten_ recitering fra manualen, undrede jeg mig over hvad nyt det
skulle bringe.
Hvis det skulle afholde nogen fra at komme med kommentarer, undskylder
jeg mange gange, idet jeg mener at ALLE bør kunne deltage i denne
gruppe. Noget af det som gør en til ekspert er netop at man tager
stilling, får afprøvet sine meninger og evt. lærer af sine
fejltagelser.
-------
Tomas
PS. Jeg startede med BASIC på en ZX81... det føles som en evighed
siden!
| |
CADmageren ApS (17-10-2002)
| Kommentar Fra : CADmageren ApS |
Dato : 17-10-02 08:59 |
|
Fint nok.
Jeg var nok også selv lidt træt i går aftes
mvh
Michael Christoffersen
| |
Rayman (08-11-2002)
| Kommentar Fra : Rayman |
Dato : 08-11-02 13:33 |
|
> Er der nogle der kan forklare mig, hvornår det er fornuftigt at bruge
> en static variabel i en funktion.
På trods af en lang diskussion, er der tilsyneladende ikke nogen som har
givet et fornuftigt eksempel på hvornår man bruger en static variabel.
Man bruger godt nok ikke statiske variabler særlig tit, men de har dog nogle
oplagte brugssteder.
Hvis man har eks. 8 funktioner i samme, og vil tælle hvor mange gange hver
funktion kaldes, kan man lægge 8 variabler i toppen af modulet, og så tælle
i funktionen, men hvis man ikke vil have at alle funktioner har adgang til
dem, kan man bruge en statisk variabel i hver funktion, og på den måde undgå
at tilkludre modulet, og hver variabels tilhørsforhold er indlysende.
Mvh Rayman
| |
|
|