大白話系列之C#委託與事件講解(序言)

在講委託,事件之前,我想問大家一個非常簡單的問題,也許在我們日常的編程中基本上每天都會遇到,但是卻往往不去瞭解的地方,請以下代碼:protected void Page_Load(object sender, EventArgs e){}protected void btnSearch_Click(object sender, ImageClickEventArgs e){}protected void grdBill_RowDataBound(object sender,

C++學習的方法以及四大名著(薦)

C++學習的方法以及四大名著(薦)轉眼間學習和使用C++已經有近10個年頭了,開始學習的時候走了不少的彎路,今天有些時間,希望寫下這篇文章並且對開始學習C++的朋友有些協助。當然我首先需要說明的是,這篇文章是根據本人的感受寫的,可能不同的人有不同的觀點,歡迎討論。開始學習C++的時候中國的互連網環境還不是很好,資訊也比較閉塞,所以自己開始的時候是由Thinking in C++

C#模板編程(1):有了泛型,為什麼還需要模板?

C#泛型程式設計已經深入人心了。為什麼又提出C#模板編程呢?因為C#泛型存在一些局限性,突破這些局限性,需要使用C#方式的模板編程。由於C#文法、編譯器、IDE限制,C#模板編程沒有C++模板編程使用方便,但是,仍然可以解決一些問題。 下面先看C#泛型程式設計的兩個限制:(1)類型約束問題。C#泛型的類型約束是個很嚴重的問題。假設需要寫一個泛型方法,這個方法有2個參數,然後方法返回結果是這兩個參數的和。這樣的泛型方法無法直接實現。因為Byte,Int32等等並沒有公用介面。沒有公用介面,但又想藉

C#自動實現Dll(OCX)控制項註冊的兩種方法

儘管MS為我們提供了豐富的.net

ObjectDataSourc用法之二(過濾)

ObjectDataSourc用法之二(過濾)1.       准備條件參數:ObjectDataSource用法之一(SelectMethod來進行簡單的邦定)2.       在業務處理類中添加如下方法public DataSet FilterItems(){    System.Xml.XmlTextReader xr = new XmlTextReader(_path);    DataSet ds = new DataSet();    ds.ReadXml(xr);   

C# 學習 第一章 C# 4.0 初步體驗

C# 語言:C#是一個物件導向的程式設計語言。是針對.Net Framework 平台開發的語言,C#語言編寫出來的代碼總是在.Net Framework平台上啟動並執行。.Net Framework 是什麼:是微軟為了開發應用程式而建立的一個富有革命性的一個新平台。.Net Framework 定義了.Net 應用程式開發和運行環境,包括 .Net 應用程式中使用的類庫。類似於Java的虛擬機器。開發人員可以在此平台或者環境下位各種平台和裝置編寫應用程式。 .Net

正確的C++記憶體分區

前置:作為一個C++的菜鳥,一直對C++的記憶體分區比較暈乎,網路上的分配方式各式各樣,讓人看得雲裡霧裡。網路上有一種分區,將C++記憶體分為:堆區、棧區、自由儲存區、全域/靜態儲存區和常量儲存區。個人認為這是完全錯誤的記憶體劃分方式,誤導我這樣的菜鳥。鑒於此,我尋找資料,整理出以下的結論。真正合理的C++的記憶體劃分為棧區、堆區、全域區/靜態區、字串常量和代碼區。這裡去掉自由儲存區,增加了代碼區,理由會在下面講到。棧區:由系統進行記憶體的管理。說明:主要存放函數的參數以及局部變數。棧區由系統進

C++關鍵字

C++關鍵字asmdoublenewswitchautoelseoperatortemplatebreakenumprivatethiscaseexternprotectedthrowcatchfloatpublictrycharforreturntypedefclassfriendregisterunionconstgotoshortunsignedcontinueifsignedvirtualdefaultinlinesizeofvoiddeleteintstaticvolatiledolo

關鍵字typename(針對C++)

如果你有一個合適的名字來指定一個類型,並且這個名字依賴於模板的參數,請使用關鍵字 typename。在模板的聲明和定義中只使用關鍵字typename。下面的例子說明使用關鍵字typename。1 template<class T> class A2 {3 T::x(y);4 typedef char C;5 A::C d;6 } 運算式 T::x(y) 是含糊不清的。它可能是一個調用非本地參數值 y 的函數 x() ,也可能是一個宣告類型為 T::x 的變數

C# 參考型別作為函數參數時

在探討本文的主題之前,先來介紹下C#中的實值型別和參考型別眾所周知C#中有實值型別和參考型別,實值型別有基礎資料類型(諸如int,double,bool等)、結構體、枚舉,參考型別有介面、類、委託。實值型別全部在作業系統的棧空間中申請,而參考型別則在作業系統的堆空間中建立對象,然後在棧空間中申請一個指標指向這個對象的地址。因此C#的參考型別其實就如同C++的指標類型。 下面我再來看看函數傳參的問題。早在C時代就有函數參數傳值和傳地址的概念,請記住在C#中函數參數預設都是傳值。對於實值型別,函數是

繼承(針對C++)

繼承是一個重用和擴充現有類而無需修改該類的機制,從而在兩者之間形成層級關係。繼承差不多是吧一個對象嵌入到另外一個對象。假設你在類 B 的定義中聲明類 A 的一個對象 x 對象,結果,類 B 將能夠訪問類 A 所有的公用的資料成員以及成員函數。然而,在類 B 中,你想要訪問類 A 的所有的公用資料成員以及成員函數,需要通過類 A 的對象 x。 下面的例子樣本這些: 1 #include <iostream> 2 using namespace std; 3 4 class A { 5

LINQ之路 2:C# 3.0的語言功能(上)

在上一篇的LINQ介紹中,我們已經看到了隱式類型變數var,擴充方法(extension method)和lambda運算式的身影。沒錯,他們正是LINQ技術的基石,是他們讓LINQ的實現成為可能,並且簡化了LINQ運算式的書寫。在這一篇中,我將和大家一一探討C#3.0在語言功能上所作的努力,包括:隱式類型局部變數、自動屬性和匿名型別。 隱式類型局部變數C#是強型別語言,意味著我們在聲明變數時必須指定變數的具體類型,比如: static void

Silverlight C# 遊戲開發:L4 模型組和簡單的動畫

前面我們已經完成了基本模型和自訂模型匯入,你會發現每次都通過代碼來添加一堆模型確實很麻煩,在Balder中可以使用Geometry做模型組,將各種各樣的模型添加到其中,這次我們簡單的一起來研究一下模型組,加上一個小小的動畫,如果這篇你看明白了,那麼就可以使用這個引擎開發出一個簡單的遊戲,期待你的成果。最先我們還是從建立一個控制項開始,請建立一個控制項開啟其中的.cs檔案,增加代碼變成下面的樣子,Code highlighting produced by Actipro

Silverlight C# 遊戲開發:Balder的3D世界

在今年早些時候,我們的群裡流傳著一本書《3D games development with Microsoft Silverlight

Silverlight C# 遊戲開發:L3 遊戲的3D空間

在初中數學中我們學到過平面座標系統(笛卡爾座標系),2D的座標系最好理解,它只有兩個軸,用來表示的數字相當簡單,3D的空間比2D多了一軸,但是卻多出了很多2D空間沒有的概念。有趣的是,2D空間的很多概念卻是3D空間的基礎,通過推論得到3D空間的結論。3D座標系有一個很重要的概念是左右手的座標系定義,決定了軸向的正負方式,在不同的領域中是完全不同的,如果將一個左手座標系製作出來的3D模型放在一個右手座標系中,那麼他們的左右是相反的,來自《3D數學基礎》對左右手座標系有了一個比較清晰的表示:我看過D

Silverlight C# 遊戲開發:草動系統(三)手到草動

隨風而動是一種感覺,能夠很好的展現就已經可以,很多朋友提出了各種方法可以使得隨風而動更加自然,相信都能夠實現,而且效果比我的還好,寫此文之目的就是開拓一下思路,能夠用一些簡單的方法,組合出來讓人興奮的效果,而這次,咱們讓草跟著滑鼠而動,彷彿是有一個無形的手在撥開草叢:)這次我們仍然還是使用網格的區塊劃分,判定滑鼠的經過路線,然後對草產生撥動的邏輯,請參看:這樣看起來好像很簡單,同樣還是為了增加效率,只是對應網格上的草才會執行邏輯,滑鼠移動那裡就會觸發,我管這個叫觸動(touch),所以為了達到相

Silverlight C# 遊戲開發:L9 天空盒

在前面的篇節中,基本上完成了一個Silverlight3D世界的構建,此時只需要一些邏輯和代碼就可以完成完整的遊戲,而今天我將最後一個部分補充:天空盒(SkyBox)。說到天空盒,以前學過D3D的朋友一定不陌生,其實就是六面方盒子,使用透視錯覺產生是一個球形。 從可以想想,由6張圖片可以組合封閉空間,所以先準備上面的這樣的一張圖,我直接從別的地方借來了6張標準的SkyBox圖片,關於SkyBox的圖片可以請3D美術師協助,或者藉助網路資源,另外,有一些專門製作天空盒的軟體。最先需要準備圖片,把他

Silverlight C# 遊戲開發:L1 3D世界的建造

我們在上一篇介紹了Balder的3D效果,今天我們用一點時間製作第一個3D例子,一起來研究和學習Silverlight的3D世界,本篇的目標效果如下:前篇連結:Silverlight C# 遊戲開發:Balder的3D世界

Silverlight C# 遊戲開發:草動系統(二)隨風而動

上一個草動效果是完全的隨機搖擺效果,並沒有特定的規律,看起來不是很自然,在實際的遊戲進行過程當中,玩家並不太注意是否真的和現實世界一模一樣,但是作為開發人員,沒有理由拒絕極致,這一次咱們一起做一個風吹過的草動效果。真實中的風動效果,如下,是一種類似波動的形象,當然了,風完全看不到,那麼為了達到這個效果,應該從一個方向吹過,然後產生搖擺。問題來了,如何知道風碰到了那些草,可能最簡單的方式是遍曆一下所有的草,看看合格就執行一下動畫,但是效率不可恭維,當螢幕上超過一定數量草的時候,每次的遍曆絕對是一個

Silverlight C# 遊戲開發:草動系統(一)簡單的草動

昨天晚上在銀光進化論談聊到以前MU的草動效果,Goods尤其覺得很好,正巧我以前做過草動的系統,可以作為經驗總結一下,最近一直糾結文章標題,正好藉此發揮一下,拋磚引玉:)以前寫的草動系統都是3D的,這次寫2D的確實有一些麻煩,整理思路用了很久,好在Silverlight提供了很好的動畫支援,很方便的就實現了一個簡單的草動效果。首先很簡單,建立一個Silverlight4的項目:GrassTest01工程的.Web項目叫GrassShow.Web,我想以後可能還有GrassTest02,03,04

總頁數: 4314 1 .... 340 341 342 343 344 .... 4314 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.