webForumDet fria alternativet

"Avdimma" en variabel

ASP

8 svar · 243 visningar · startad av dap

Medlem sedan dec. 1999151 inlägg
Frågan#1

Jag har var vana att alltid dimma mina variabler. Jag dimmar dem i den fil där variabeln används och sätter "Set adoGurka = Nothing" på slutet. En annan ovana jag har är att döpa recordset:en till adoGurka om tabellen i db heter tblGurka.

I mitt system får jag då variabler med samma namn i olika filer, som jag inkluderar ihop till en. Detta leder då till felet "Name redefined".

Att lägga alla Dim Variabel i en fil verkar inte så roligt.

Kan man "avdimma" en variabel och sedan dimma om den lite längre ner i koden?

::dap

Medlem sedan juni 20019 024 inlägg
#2

Du dimmar om en variabel med ReDim.

------------------
"Tål det inte att skämtas om, är det inte värt att ta på allvar."

Medlem sedan dec. 200012 464 inlägg
#3

Kan du inte lägga in koden i en sub i varje include.

------------------
essentitia preter non sans multiplicandum

Medlem sedan dec. 1999151 inlägg
#4

Kan du inte lägga in koden i en sub i varje include.

Kan bara filen som innehåller sub:en läsa den?

Medlem sedan dec. 19996 721 inlägg
#5

De dimmade variablerna blir lokala för subben, och du slipper namnkollision.

Medlem sedan dec. 1999151 inlägg
#6

Vad är det för fel på detta?:

Call DimVar()

Sub DimVar()

Dim adoShowDive
Dim adoDiveReq

End Sub

Själva Call-grejen funkar men jag får felet "Variable is undefined" i alla fall.

[Redigerat av dap den 14 dec 2001]

Medlem sedan juni 200032 967 inlägg
#7

De dimmade variablerna blir lokala för subben

Du kan alltså inte använda dem utanför subben.

Mvh,

------------------
Don't panic!

Medlem sedan dec. 19998 577 inlägg
#8

Vad är det för fel på detta?

Som flera påpekat ovan så kommer variabler dimmade i en sub inte kunna användas utanför eftersom dom är lokala för just den subben, skall du använda variabeln utanför subben så måste du dimma den där.

------------------
Mostly Harmless

Medlem sedan feb. 20001 590 inlägg
#9

Kan du inte använda en objektorienterad modell, där du redan i förväg har de metoder/variabler som kan tänkas användas "dimmade"

Förstår inte meningen med att "dimma" variabler i en subrutin, eftersom man ändå vet vilka variabler som kommer att användas, och att det kommer att bli namnkonflikt mellan vissa.

I ditt fall kanske det är enklast med en find - replace i editorn, och bara byta de variabler som har fel namn?

Att köra en set variabel=nothing har ingen verkan på variabler, den är bara användbar vid objekt, där man då lämnar tillbaka det minnet som objektet tog upp.

/T

------------------
Jensen Ambassadör, mitt bästa köp! www.jensen.no

[Redigerat av Toonster den 14 dec 2001]

264 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)