---
title: "Dim?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/6650-dim"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Goldfish"
published: "2000-09-20T08:58:00.000Z"
updated: "2000-09-21T11:26:00.000Z"
replies: 12
views: 265
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/6650-dim"
---

# Dim?

## #1 — Goldfish, 2000-09-20T08:58Z

Alltså, är det verkligen nödvändigt att definera variabler med dim? Jag tycker att resultatet verkar bli desamma varesig man definerar eller inte? 

I Webstudios guide defineras det hela tiden...

Permalänk: https://www.webforum.nu/p/6650

## #2 — Vide, 2000-09-20T09:21Z

Med Option Explicit påslaget så kommer du att få en avsevärd snabbhetsförbättring när du dimmar dina variabler... och det är en god sed att dimma.... du kan när som helst kolla längst upp på sidan och kolla vilka variabler som är använda...

Dim fungerar på det viset att den reserverar en bit minne för varje variabel, så att tolken inte behöver gå igenom koden och göra detta själv... det är detta som du tjänar tid på...

Mvh, Vide

Permalänk: https://www.webforum.nu/p/246721

## #3 — Robban, 2000-09-20T09:32Z

Framför allt (IMO) skyddar det programmeraren.

Ett exempel. Om man i början av ett program sätter en variabel **pillutta = 10** och senare försöker med:

**Response.Write pilutta**

Kör man utan **Option Explicit** så sväljer skripttolken detta utan att klaga, och man har ett roligt arbete framför sig för att försöka luska ut vad det är som gått snett. Kör man *med* **Option Explicit** så får man ett felmeddelande som direkt talar om vad man har gjort för fel.

Permalänk: https://www.webforum.nu/p/246722

## #4 — a, 2000-09-20T09:52Z

Vad är det egentligen som gör att det går att åstadkomma en prestandaökning genom att använda Option Explicit?

Permalänk: https://www.webforum.nu/p/246723

## #5 — emission, 2000-09-20T10:39Z

<http://cgi.webforum.nu/wf/Forum11/HTML/000894.html>

Permalänk: https://www.webforum.nu/p/246724

## #6 — fredrik, 2000-09-20T10:40Z

I princip är det så om du inte använder option explicit så måste systemet varje gång den träffar på en variabel kontrollera om variablen har blivit skapad eller inte och det är detta som slöar ner.

Permalänk: https://www.webforum.nu/p/246725

## #7 — a, 2000-09-20T11:03Z

aha, toppen, men som sagt den riktigt stora vinsten är ju att man utesluter ett antal onödiga slarvfel om man tvingar sig att deklarara variablerna

Permalänk: https://www.webforum.nu/p/246726

## #8 — PatrikB, 2000-09-20T15:13Z

Hello,

en annan sak man inte ska glömma bort är att man ska dim'a variablerna inne i en sub, om man har en sådan. Det ökar oxå prestandan än om du skulle dim'a variabeln utanför sub'en

//PatrikB

Permalänk: https://www.webforum.nu/p/246727

## #9 — Vide, 2000-09-20T20:36Z

PatrikB, hur kan det snabba upp att lägga dimmarna i en sub?

Permalänk: https://www.webforum.nu/p/246728

## #10 — PatrikB, 2000-09-20T21:47Z

Hello igen,

läste det ngn stans .... tror att det var artikeln om hur man "snabbar" upp sina applikationer i ASP på [www.asptoday.com](http://www.asptoday.com) 
sök på: Enhancing Performance in ASP

cya,
PatrikB

Permalänk: https://www.webforum.nu/p/246729

## #11 — Vide, 2000-09-21T06:51Z

Hmmm... hittade artikeln och blev lite förvånad... :)

Men om man ropar på en sub med en del deklarationer i två gånger, blir det inte lite bakvänt då? Onödig kod...

Vad jag så ur artikeln var att man skulle flytta initieringen och deklareringen av variablerna man skulle använda in i subben...

Mvh, Vide

Permalänk: https://www.webforum.nu/p/246730

## #12 — PatrikB, 2000-09-21T08:16Z

Antar att det annars ligger och tar upp extra minne som ej behövs förrän man kör subben. Kanske är det det som gör att det snabbas upp om man har initieringen och dim'en inne i subben, dvs, "extra minne" ;) frigörs när subben e inaktiv.

//PatrikB

Permalänk: https://www.webforum.nu/p/246731

## #13 — Toonster, 2000-09-21T11:26Z

Tror det har med användningen av det dynamsika minnet. Och var i minnet variablerna sparas.
Säg att en subrutin efter realtidskompileringen startar på en viss adress hamnar de deklarerade variablerna inom samma segment.

Om man deklarerar variablerna tidigare, så hamnar de kanske inte alls i samma segment, och kräver kanske en 2 cyklers instruktion för att hämtas.
(bara spånar lite...)

Eftersom det rör sig om realtidskompilering, tror jag att ALL VB script ligger i DS segmentet.

Kanske någon guru i kompilatorteknik kan ge några svar?

/T

Permalänk: https://www.webforum.nu/p/246732

---

Tråden på webben: https://www.webforum.nu/amne/asp/6650-dim
