.net的含義
一般指.net framework框架,是microsoft為開發應用程式而建立的乙個平台。
.net 的內容
主要包含乙個龐大的**庫。可以在客戶語言(如c#)中通過物件導向程式設計技術(opp)來使用這些**。這個庫分為多個不同的模組,這樣就可以根據希望得到的結果來選擇使用的部分。
定義了基本的型別。這也被稱為通用型別系統(cts)。可以在各種語言之間互動操作。
包含.net公共語言執行庫(clr)負責管理用.net庫開發的所有應用程式的執行。
c#:c#是執行在.net clr上的,用於建立應用程式的一種高階程式語言。是一種
物件導向的語言。
c#能編寫怎樣的應用程式:
桌面應用程式:使用.net framework的windows presentation foundatior(wpf)模組就可以簡便的生成這種程式(以前是應用windows forms生成)。
windows store應用程式:win8 中新引入的一類應用程式,針對觸控螢幕設計,通常是全屏執行。
web應用程式:它們是一些web頁面,可以通過web瀏覽器檢視。可以用c#語言通過web forms建立asp .net應用程式。
wcf服務:這是一種靈活建立各種分布式應用程式的方式。使用wcf服務可以通過區域網或internet交換幾乎各種資料。
.net的兩種互動模式
c/s:客戶機(client)/服務(server)模式 :客戶端需要安裝專用的客戶端軟體。
b/s:瀏覽器(browser)/伺服器(server)模式: 客戶只需安裝乙個瀏覽器
.net framework編寫應用程式的過程
使用.net framework編寫應用程式,就是使用.net**庫編寫**(支援framework的任何一種語言)
為執行c#**,必須把它們轉換為目標作業系統能夠理解的語言,即本機**(native code)這種轉換稱為編譯**,由編譯器執行。此過程包含兩個階段:1、把**轉化為通用中間語言(cil),編譯過程由vs完成。2、由jit把cil編譯為本機**。
cil在編譯使用.net framework庫的**時,不是立即建立專用於作業系統的本機**,而是把**編譯為通用中間語言(cil)
這些**並非專門用於任何一種作業系統,也非專門用於c#及其他.net語言,如visual basic.net也可以在第一階段編譯為這種語言,開發c#應用程式時,這個編譯步驟由ide完成。
程式集在編譯應用程式時,所建立的cil**儲存在乙個程式集中。
程式集包括可執行的應用程式檔案(exe)和其他應用程式使用的庫(dll)
jit編譯器
jit編譯器:即時編譯器
jit編譯器能夠將cil編譯成為各種不同的機器**,以適應對應的系統平台,最終使得程式在目標系統中得以順利的執行。
託管**
在將**編譯為cil,再用jit編譯器將它編譯為本機**後,clr的任務還沒全部完成,還需要管理正在執行的.net framework編寫的**(這個執行**的階段通常稱為執行時ruantime)。即clr管理著應用程式,其方式是管理記憶體、處理安全性以及允許進行跨語言除錯等。
相反,不受clr控制的應用程式屬於非託管型別,某些語言如c++可以用於編寫這類應用程式,例如,訪問作業系統的低階功能。但在c#中,只能編寫在託管環境下執行的**。我們將使用clr的託管功能,讓.net自己與作業系統進行互動。
控制台程式
為相容ms-dos而建立的程式。
桌面應用程式
c#基礎語法
c#程式結構
c#**有一系列語句組成,每條語句都用乙個
分號結束
,一行可以
有多條語句(不推薦),乙個語句也可以分多行。 **塊用{}
包圍,花 括號不需要帶分號。
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
//引用命名空間
//乙個命名空間內的項,同一命名空間內的其他**只要通過名稱引用就可以訪問它。在其他的命名空間內引用該項要在項名之前加空間名稱:空間名稱.項名稱。
namespace _2._1_csharp程式結構
------》//命名空間或專案名稱}}
深入了解vs
.sln解決方案檔案
.csproj 專案檔案
.cs類檔案
解決方案 包含 專案檔案 包含 類檔案
命名空間及識別符號、關鍵字
命名空間(namespace):
是.net中提**用程式**容器的方式,這樣
就可以唯一的識別**及其內容
識別符號:
是程式設計人員為常量、變數、資料型別、方法、函式、屬
性、類、程式定義的名稱。
關鍵字:
對於c#編譯器而言,具有特定含義的名稱,比如程式中的
using,class,void都屬於關鍵字。如果錯誤的將關鍵字用
作識別符號,編譯器會產生乙個錯誤。
識別符號的規定
C 11程式設計知識 右值引用
右值引用的概念有些讀者可能會感到陌生,其實他和c 98 03中的左值引用有些類似,例如,c 98 03中的左值引用是這樣的 int i 0 int j i 這裡的int 是對左值進行繫結 但是int 卻不能繫結右值 相應的,對右值進行繫結的引用就是右值引用,他的語法是這樣的a 通過雙引號來表示繫結型...
C 11基礎語法知識總結 一
string類 1 issize decltype line.size m line.size vector類 1 早期的vector的元素還是vector,則需要在外層vector的右尖括號和其元素型別之間加乙個空格 vectorint 而新標準中可以直接採用 vectorint 2 最好在開始時...
C 11基礎語法知識總結(五)
當過載的運算子為成員函式時,this指標繫結到左側運算物件上。成員運算子函式的顯式引數數量比運算物件少乙個。對於乙個過載的二元運算子來說,左側運算物件傳入第乙個引數,右側運算物件傳入第二個引數。如果作為成員運算子,則this指標所指內容預設作為左側運算子物件,函式只需傳入乙個引數,作為右側運算物件。...