"Avdimma" en variabel

ASP

8 svar · 261 visningar · startad av dap

Medlem sedan dec. 1999151 inlägg
Trådstart#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.

Medlem sedan dec. 200012 464 inlägg
#3

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

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,

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.

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

248 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)