C#基础与VB基础比较
? ? ? ? ?在看C#視頻的時(shí)候,感覺這老師講的很亂,還好前面有VB作為基礎(chǔ)。只要還記得我們?nèi)ツ暧懻摰?/span>VB總結(jié),那么在看C#視頻的時(shí)候,就會(huì)感覺到很熟悉。看完視頻之后,就特別有一種欲望,將C#和VB進(jìn)行比較。
???????? 1.數(shù)據(jù)類型
???????? C#包括兩種變量類型:值類型和引用類型
?1.值類型:值類型就是一個(gè)包含實(shí)際數(shù)據(jù)的量。當(dāng)定義一個(gè)值類型的變量時(shí),C#會(huì)根據(jù)所聲明的類型,以堆棧方式分配一塊大小相適應(yīng)的存儲(chǔ)區(qū)域給這個(gè)變量,隨后對(duì)這個(gè)變量進(jìn)行讀和寫操作。
?????????例如:下面的例子,首先先在堆棧中分配一個(gè)32位的存儲(chǔ)區(qū)域給變量a,并且將10放入這個(gè)內(nèi)存區(qū)域中,隨后,從變量a中取出值,加上10,再將計(jì)算結(jié)果賦給a。
Int a = 10 A = a +10 2. 引用類型: 引用類型跟值類型不同,值類型存儲(chǔ)的是一個(gè)實(shí)際數(shù)據(jù)的量,而引用類型存儲(chǔ)對(duì)數(shù)據(jù)的內(nèi)存地址的引用。
?創(chuàng)建引用類型一般包括這兩步:首先,在堆棧上創(chuàng)建一個(gè)引用變量;然后,在堆上創(chuàng)建對(duì)象本身,再把這個(gè)內(nèi)存的首地址賦給引用變量。
例如:
String S1,S2;S1="ABCD";S2 = S1;
? ??在這里String是一個(gè)引用類型,S1,S2分別是指向字符串的引用變量。S1是字符串”ABCD”存放在內(nèi)存中的一個(gè)地址。兩個(gè)引用型變量(S1、S3)之間的賦值,使得他們兩個(gè)都是對(duì)"ABCD"的引用。
??????????注意:堆和棧的區(qū)別:
??????????堆是由new分配的內(nèi)存,存儲(chǔ)可變長(zhǎng)度的數(shù)據(jù),按任意順序和大小進(jìn)行分配和釋放內(nèi)存。速度較慢,但方便使用,而棧是一般用于存儲(chǔ)固定長(zhǎng)度的數(shù)據(jù)。按先進(jìn)后出的原則存儲(chǔ)數(shù)據(jù)項(xiàng)。
????????相對(duì)于C#的數(shù)據(jù)類型來說,VB數(shù)據(jù)類型就簡(jiǎn)單多了,主要包括這么幾種:數(shù)值型、貨幣型、字節(jié)型、日期型、邏輯型、字符串型和對(duì)象型。
???????二、變量與常量
??????? 1.常量就是指不可改變的量
C#中定義常量類型有:intdouble string boole char
????????語法:const類型名常量名=常量表達(dá)式
????????????????????? const double PI = 3.14159
????????常量的初始化:Const int a = 1
???????? VB中的常量主要有整型、長(zhǎng)整型和字節(jié)型常量和實(shí)型常量、字符串型常量、邏輯型常量和日期時(shí)間型常量。聲明如下:
[public|private ] const <常量名>[AS] <類型>]= <表達(dá)式>
? ? ? ? 2.變量是指在程序運(yùn)行過程中可以改變的量
在C#中對(duì)變量的聲明:
[訪問限定關(guān)鍵字]?數(shù)據(jù)類型?變量名
PS:
變量名必須是字母或下劃線開頭,不能有特殊符號(hào);
?一條變量聲明中,可聲明多個(gè)相同類型的變量。
???????變量的作用域:
Private只有自己可以訪問
Internal在同一個(gè)程序集中可以訪問
Public誰都可以訪問
Protected只有繼承關(guān)系可以訪問
靜態(tài)變量和實(shí)例變量:靜態(tài)變量屬于類,實(shí)例變量屬于類的實(shí)例。
VB中的變量:
聲明:<Public |Private|Dim|Static> <變量名>[As數(shù)據(jù)類型]
vb中變量的作用域:
局部變量:dim或static
模塊級(jí)變量:private或Dim
全局變量:Public
運(yùn)算符和表達(dá)式:
???????? C#提供大量的運(yùn)算符:按操作數(shù)的數(shù)目來分,有一元運(yùn)算符(++/--),二元運(yùn)算符(+,*)三元運(yùn)算符(?:)按運(yùn)算的功能來分以下幾類:
算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、條件運(yùn)算符、位運(yùn)算符、其他特殊運(yùn)算符。
而VB中運(yùn)算符就簡(jiǎn)單的多了,主要有這幾種:算術(shù)運(yùn)算符、字符串運(yùn)算符、關(guān)系運(yùn)算符和邏輯運(yùn)算符。
總結(jié)
以上是生活随笔為你收集整理的C#基础与VB基础比较的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言程序设计实验最短路径,7最短路径C
- 下一篇: 1000桶水,其中一桶有毒,猪喝毒水后会