|
Sitenize Ekleyin!
Sitenizde "Son Eklenen 10 Visual Basic Yazısı"'nı göstermek ve içeriğini zenginleştirmek için buraya tıklayınız.
Vbasicmaster.com'a link verin! Aşağıdaki minik banneri sitenize eklemek için tıklayın!
|
Üye Sayısı:     
Ziyaretçiler nerede?
| |
Bir programda geçici olarak verilerin temsili ve değerlerin saklanması için değişkenler kullanılır. Değişkenlerin değerleri, program akışı içerisinde sürekli olarak değişebilir. Örneğin:
x=36
y=24
x=x+3
y=y+x
şeklindeki atama ifadeleri ile, x değişkeninin değeri önce 36 ve y değişkeninin değeri 24 olarak atanmıştır. Sonra x?in değeri 39 ve y?nin değeri 63 olmuştur. Atama ifadesinde, = sembolünün sağ tarafındaki ifade hesaplanır ve bulunan sonuç sol taraftaki değişkenin bellekteki yerine atanır. Bu anlamda, bir değişkene yeni bir değer atanırsa, bu değişkenin önceki değeri silinecektir.
Değişkenlerin Tanımlanması:
Bir değişken kullanılmadan önce tanımlanır. Bu tanımlama genellikle Dim deyimi ile yordamın başında yapılır:
Yapısı : Dim Değişken [As tip]
Bir değişkenin özellikleri:
· Bir harf ile başlar.
· En çok 255 karakterden oluşur.
· (Nokta, +, -, /, boşluk vb) semboller içermez.
· Kapsama alanı içinde tek olmalıdır.
· Bir yordam adı ile aynı olmamalıdır.
· Örn: Geçerli değişken isimleri : MAAS
Yas1
NetMaas
Genel_Toplam
Geçersiz Değişken İsimleri: 1X
A-1
Brut Maas
Değişken tanımlanmaz veya tanımlanırken tip belirtilmezse, VB o değişkeni Variant veri tipinde algılar. Variant bir değişken herhangi bir tip veriyi içerebilir. Variant tipli değişken kullanmanın iki kötü yanı olabilir:
· Daha fazla bellek kullanımına neden olur.
· Variant veri tipi bazı veri işlem fonksiyonları için geçersiz olabilir.
Değişkenler Nerede Tanımlanır?
Bilindiği gibi VB projelerine .frm uzantılı form dosyaları ve .bas uzantılı Module dosyaları eklenebiliyor. Buna göre değişkenler ya Formlarda ya da BAS uzantılı modüllerde tanımlanabilir.
Vb deki hazır nesnelerin içerdiği kod penceresindeki her yordamda değişken tanımı yapılabilir. Ancak bu değişkenler sadece o yordam dahilinde kullanılabilir.
Object liste kutusunda bulunan (General) seçeneği seçildiğinde , Procedure liste kutusunda da (Declarations) aktif olur. Forma ait bütün yordamlarda kullanılmak istenen değişkenler General ? Declarations konumunda tanımlanır. Ve bu değişkenler söz konusu form aktif olduğu süre içerisinde yaşarlar. Başka bir forma geçildiğinde bellekten silinir ve içeriği boşalır.
Özetlemek gerekirse Formlar söz konusu olduğunda değişkenler yordamların içinde ya da Forma ait (declaration) penceresinde tanımlanır. Yordam dahilinde tanımlanan değişkenler ancak tanımlandığı yordam içinde kullanılabilir. Söz konusu formun (declaration) penceresinde tanımlanan değişkenler Forma ait bütün yordamlarda kullanılabilir.
BAS uzantılı modüllerde de değişkenler tanımlanıp kullanılabilir. Projeye modül eklemek için Project ? Add Module menüsünden faydalanılır.
Kod girişi yapılan bu pencere, formlara ait olan kod penceresinden farklı değildir. Fakat bu pencerede kod yoktur. Ama yazılabilir. Aynı formlarda olduğu gibi Sub ve End Sub arasında yordam olarak yazılmalıdır.
Formlarda olduğu gibi modüle de yordam eklemek için Tools menüsünden Add Procedure komutu kullanılır. Modül içinde tüm yordamlarda kullanılmak istenen değişken modülün (General) (Declarations) kısmında tanımlanır.
Global Değişkenler:
Projenin her yerinde yani Form ve modülerde kullanılmak istenen değişkenler BAS uzantılı bir modülün declaration penceresinde Global veya Public bildiri deyimi ile tanımlanır.
Private Sözcüğü:
Private sözcüğü ile, form düzeyinde değişkenler beliryebilirsiniz. Formun General Declarations kısmında Dim yerine Private sözcüğünü kullanarak da değişkenleri form düzeyinde geçerli kılabilirsiniz. Gerçekte, Dim deyimi ile Private deyimi birbiri ile değiştirilebilir şekilde kullanılabilmektedir.
Statik ve Dinamik Değişkenler:
Default olarak tüm lokal değişkenler dinamiktir, yani yani olay prosedürünün her çağırılışında, bir önceki çağırılış sonunda hesaplanmış değerlerini saklamazalar. Bunun yerine prosedür içinde ilk atanan değerleri ile yeniden işleme başlarlar.
Private Sub Command1_Click()
Dim x As Double
x = x + 10
MsgBox x
End Sub
Lokal değişkenleri, prosedürün her çağırılışında, bir önceki çağırılış sonunda hesaplanmış olan değerlerini saklar hale getirmek için, Static sözcüğü ile tanımlanmaları gereklidir.
Static x As Integer
Private Sub Command1_Click()
Static x As Double
x = x + 10
MsgBox x
End Sub
Açık Tanımlamaya Zorlama:
Değişkenlerin tanımlanmasını mecburi tutmak için Declarations kısmında Option Explicit deyimi yazılmalıdır.
Tools menüsünden Options komutu seçilip, Editör sekmesinde Require Variable Declaration seçeneği işaretlenirse Option Explicit deyimi otomatik olarak gelir.
Artık değişken tanımlanmadan kullanılmak istenirde Variable Not Defined hatası oluşur.
Veri Tipleri :
Bildiri Deyimi Veri Tipi Bellek Alanı Değer Aralığı
String Karaktersel 1 karakter 1 bayt 65.535
Integer Tamsayı 2 bayt -32.768 to 32.767
Long uzun tamsayı 4 bayt 2.147.483.647
Single tek duyarlı sayısal 4 bayt 3.4x10^38
Double çift duyarlı sayısal 8 bayt 1,7x10^308
Currency para-çok büyük
Çok küçük Sayı 8 bayt 922.337.203.685.447
Byte tamsayı 1 bayt 0 to 255
Boolean 2 bayt True / False
Date tarih 8 bayt 1/1/100 to 12/31/9999
Variant 16 bayt + 1 bayt her karakter için
String Türü Değişkenler: Arasına + veya & sembolü konarak birbirlerine eklenebilirler.
Private Sub Command1_Click()
Dim x As String, y As String, z As String, c As String
x = "Marmara"
y = "Çağdaş"
z = "Bilimler Vakfı"
c = x + y & z: MsgBox c
End Sub
Sabit Uzunluklu Stringler:
Dim ad As String * 8
Şeklinde ad değişkeni String türünde ve 8 karakter uzunluğunda tanımlanmıştır. Bu durumda ad=?Abdülkerim? ataması yapılırsa, ad değişkenine ?Abdülker? parçası atanacaktır. Ad=?Ali? ataması yapılırsa, ad değişkeninde ?Ali ? şeklinde 5 boşluklu bir string bulunacaktır.
iyi calismalar devami gelecek
|
|
|
| |
Yorumlar, eklemeler ve düşünceler
|
ArKadaşIm BirDe Bir DeğİşKeni Variant OLaRaK TanIMlarsan Ona Ne AtarSan O tipe DöNer Yani
Dim Degisken As Variant
yaparsanız Programın herhangi bir yerinde
degisken = 10
Degiskene 10 u atadık artık bu long yada integer olur yani bir sayı olduğunu belirtir bir daha string atayamayız ok
neyse katkım olduysa ne mutlu iyi çalışmalar bye bye.
Fatih_dp, 08.01.2006 23:46
|
|
|
|