标签: C++

  • Microsoft C# Windows 程式設計(中文版)

    Microsoft C# Windows 程式設計(中文版)

    微軟圖書必為精品

    目錄

    第一章 控制台本身
    1.1 C#版本
    1.2 程式分析
    1.3 C#名稱空間
    1.4 控制台I/O
    1.5 C#資料類型
    1.6 運算式和操作符
    1.7 條件和迴圈
    1.8 對象的跳躍
    1.9 使用C#的關鍵特性進行程式設計
    1.10 靜態方法
    1.11 異常處理
    1.12 拋出異常
    1.13 獲取和設置屬性
    1.14 構造函數
    1.15 實例和繼承
    1.16 更宏偉的藍圖
    1.17 命名約定
    1.18 幾句題外話
    第二章 歡迎使用Windows Forms
    第三章 基本結構
    第四章 文本輸出中的練習
    第五章 直線、曲線和區域填滿
    第六章 接近鍵盤
    第七章 頁面和變換
    第八章 滑鼠的歷史
    第九章 文本和字體
    第十章 計時器和時間
    第十一章 圖像和點陣圖
    第十二章 按鈕、標籤和捲軸
    第十三章 貝茲曲線和其他樣條曲線
    第十四章 菜單
    第十五章 路徑、區域和裁剪
    第十六章 對話方塊
    第十七章 畫刷和畫筆
    第十八章 文字方塊、清單方塊和旋轉框
    第十九章 字體
    第二十章 工具列和狀態列
    第二十一章 列印
    第二十二章 樹形視圖和列表視圖 
    第二十三章 中繼檔
    第二十四章 剪切、拖動和放置

    附錄A 文件和流
    A.1 最基本的文件I/O類
    A.2 FileStream的屬性和方法
    A.3 FileStream的問題
    A.4 其他流類型
    A.5 讀寫文本
    A.6 二進位檔案I/O
    A.7 Environment類
    A.8 檔案名和路徑名解析
    A.9 並列的類
    A.10 使用目錄
    A.11 檔操作和資訊
    附錄B 數學類
    B.1 數數值型別
    B.2 檢查整數溢出
    B.3 小數類型
    B.4 浮點數的無窮大和無窮小
    B.5 Math類
    B.6 浮點數的餘數
    B.7 冪和對數
    B.8 三角函數
    附錄C 字串理論
    C.1 char類型
    C.2 String的構造函數和屬性
    C.3 複製字串
    C.4 轉換字串
    C.5 連接字串
    C.6 比較字串
    C.7 搜索字串
    C.8 去首尾空格和填補字元串
    C.9 字串操作
    C.10 格式化字串
    C.11 陣列排序和搜索
    C.12 StringBuilder類

    點擊下載:  Microsoft C# Windows 程式設計(中文版)

  • 《C++ Cookbook》

    Despite its highly adaptable and flexible nature, C++ is also one of the more complex programming languages to learn. Once mastered,however, it can help you organize and process information with amazing efficiency and quickness.
    The C++ Cookbook will make your path to mastery much shorter. This practical, problem-solving guide is ideal if you’re an engineer,programmer, or researcher writing an application for one of the legions of platforms on which C++ runs. The algorithms provided in C++ Cookbook will jump-start your development by giving you some basic building blocks that you don’t have to develop on your own.

    Less a tutorial than a problem-solver, the book addresses many of the most common problems you’re likely encounter–whether you’ve been programming in C++ for years or you’re relatively new to the language. Here are just some of the time-consuming tasks this book contains practical solutions for:

    1. Reading the contents of a directory
    2. Creating a singleton class
    3. Date and time parsing/arithmetic
    4. String and text manipulation
    5. Working with files
    6. Parsing XML
    7. Using the standard containers

    Typical of O’Reilly’s “Cookbook” series, C++ Cookbook is written in a straightforward format, featuring recipes that contain problem statements and code solutions, and apply not to hypothetical situations, but those that you’re likely to encounter. A detailed explanation then follows each recipe in order to show you how and why the solution works. This question-solution-discussion format is a proven teaching method, as any fan of the “Cookbook” series can attest to. This book will move quickly to the top of your list of essential C++ references.

    Download Now!  《C++ Cookbook》

  • 《ASP.NET 3.5 入門經典》- 涵蓋C#和VB.NET(第5版) 電子書

    本書將介紹如何創建功能豐富、資料驅動的互動式網站。雖然這句話很拗口,但是用了Visual Web Developer 2008,就會發現這並不像看起來那樣難。本書將介紹構建Web網站的整個過程,從第1章的安裝Visual Web Developer 2008,一直到第18章的將Web應用程式部署到生產伺服器上。本書分為18章,每一章重點介紹一個特定主題。

      第1章“ASP.NET 3.5入門”。本章介紹如何獲得並安裝Visual Web Developer 2008。這一章將說明如何下載與安裝Visual Web Developer 2008的免費版本,即Express Edition,還介紹了HTML——每個Web頁面背後的語言。這一章最後概述Visual Web Developer提供的自訂選項。

      第2章“構建ASP.NET網站”。本章介紹如何創建一個新的Web網站,以及如何向它增加新元素,如頁面。除了如何創建結構良好的網站外,還會介紹如何用Visual Web Developer中的大量工具來創建 HTML與ASP.NET頁面。

      第3章“設計Web頁面”。Visual Web Developer附帶了大量創建設計良好、有吸引力的Web頁面的工具。本章將說明如何充分利用這些工具。此外,還會介紹CSS這種用來定義Web頁面格式的語言。

      第4章“使用ASP.NET控制項”。ASP.NET Server Control是ASP.NET中最重要的概念之一,它們允許用少量代碼創建複雜而功能豐富的Web網站。本章介紹了可用的大量伺服器控制項,解釋了它們的用途,並說明了它們的用法。

      第5章“ASP.NET Web頁面程式設計”。雖然內置CSS工具與ASP.NET Server Control非常有助於創建Web頁面,但是用程式設計語言能提高頁面的價值。本章花了大量精力介紹Web頁面程式設計。值得一提的是,本章(以及本書餘下章節)所有示例都用Visual Basic和C#兩種語言表述,因此可以選擇一種最喜歡的語言。

      第6章“創建外觀一致的Web網站”。一致性比較容易使Web網站具有吸引力且給人比較專業的印象。ASP.NET通過使用母版頁來説明創建外觀一致的頁面。母版頁可以用來定義頁面的全域外觀。皮膚和主題有助於集中控制項和Web網站中其他視覺化元素的外觀。本章還會介紹如何創建基頁,來説明集中網站中所有頁面都需要的程式設計代碼。

      第7章“導航”。為了説明訪問者在網站中找到流覽路徑,ASP.NET配置了一些導航控制項。這些控制項用來構建網站的導航結構。可以將它們連接到網站的集中網站地圖(定義Web網站中的頁面)。本章還會介紹如何通過寫程式將使用者從一個頁面發送到另一個頁面。

      第8章“使用者控制項”。使用者控制項是可用在多個頁面中的可重用頁面片斷。同樣地,它們對於一些重複內容(如功能表、橫幅等)也很有用。本章將介紹如何創建與使用使用者控制項,並用一些程式化的功能來增強它們。

      第9章“驗證用戶輸入有效性”。網站中的大部分交互性是通過用戶的輸入定義的。本章介紹如何用ASP.NET Server Control接受、驗證和處理用戶輸入。此外,還將介紹如何從ASP.NET Web應用程式發送電子郵件,以及如何從文字檔中讀資訊。

      第10章“ASP.NET AJAX”。Microsoft ASP.NET AJAX允許創建漂亮、無閃爍的Web頁面,消除了傳統桌面應用程式與Web應用程式之間的差距。本章將介紹如何用內置AJAX功能增強Web頁面的表現,從而獲得與Web網站更平滑的交互。

      第11章“初識資料庫”。瞭解為何使用資料庫對於構建現代Web網站是至關重要的,因為大多數現代Web網站都要求使用資料庫。本章將介紹SQL(訪問和更改資料庫中的資料的查詢語言)的基礎。此外,還將介紹Visual Web Developer中説明創建和管理SQL Server資料庫的資料庫工具。

      第12章“顯示和更新資料”。本章建立在從上一章學到的知識的基礎上,說明了如何用ASP.NET資料綁定與資料來源控制項來創建一個豐富的介面,使使用者能與這些控制項的目標資料庫中的資料交互。

      第13章“LINQ”。LINQ是Microsoft的新增解決方案,用來訪問物件、資料庫、XML等。本章介紹如何使用LINQ to SQL訪問SQL Server資料庫。不需要寫大量手工代碼,可以創建一組LINQ物件來完成繁重的工作。本章將介紹LINQ是什麼,如何使用內置在Visual Web Developer中的視覺化LINQ設計器,以及如何寫LINQ查詢來讓資料進出SQL Server資料庫。

      第14章“表現資料—— 高級主題”。前面的章節大多集中於使用資料的技術基礎,而本章是從前端的角度來看同樣的主題。本章將介紹如何用控制項樣式來改變資料的視覺化外觀。本章還介紹與資料繫結控制項的交互,以及如何通過保持經常訪問的資料的本機複本來加速應用程式。

      第15章“ASP.NET 3.5 Web網站中的安全性”。雖然安全性在本書中提出得相當晚,但是安全性是最重要的主題。本章將介紹如何使用與安全性相關的內置ASP.NET功能。本章將介紹若干促進安全性的應用程式服務。還將介紹如何讓用戶在Web網站上註冊一個帳戶,如何區分匿名與登錄使用者,以及如何管理系統中的使用者。

      第16章“個性化Web網站”。本章建立在第15章介紹的安全性功能基礎之上,介紹了如何用針對個人使用者的內容創建個性化Web頁面。本章將介紹如何配置與使用ASP.NET Profile,來存儲提供給已知和匿名訪問者的個性化資料。

      第17章“異常處理、調試和跟蹤”。為了理解、改進和修復為ASP.NET Web頁面寫的代碼,需要有優秀的調試工具。Visual Web Developer提供了出色的調試支援,可以在運行時診斷應用程式的狀態,説明您在使用者發現問題之前發現並解決問題。

      第18章“部署Web網站”。到本書末尾,應當有一個準備公佈於世的Web網站。但是具體到底如何做呢?要將Web網站公佈到世界上,需要知道和瞭解哪些事情?本章給出了這些問題的答案,並說明了為了運行最終Web網站,如何配置不同的生產系統。

     電子書下載: 《ASP.NET 3.5 入門經典》- 涵蓋C#和VB.NET(第5版)

  • C++菜鳥編程 英文版 電子書分享

     
    書名:C++菜鳥編程/C++ Programming for the Absolute Beginner
    作者:德克·亨克曼斯 Dirk Henkemans
    類型:程序和Web開發

    If you are new to programming with C++ and are looking for a solid introduction, this is the book for you. Developed by computer science instructors, books in the “For the Absolute Beginner”™ series teach the principles of programming through simple game creation. You will acquire the skills that you need for more practical C++ programming applications and will learn how these skills can be put to use in real-world scenarios.

    Throughout the chapters, you will find code samples that illustrate concepts presented. At the end of each chapter, you will find a complete game that demonstrates the key ideas in the chapter, a summary of the chapter, and a set of challenges that tests your newfound knowledge. By the time you finish this book, you’ll be well versed in C++ and be able to apply the basic programming principles you’ve learned to the next programming language you tackle.

    點擊下載: C++ Programming for the Absolute Beginner

  • 《Accelerated C# 2010》英文版 免費電子書

    C# 2010 offers powerful new features, and this book is the fastest path to mastering them—and the rest of C#—for both experienced C# programmers moving to C# 2010 and programmers moving to C# from another object-oriented language. Many books introduce C#, but very few also explain how to use it optimally with the .NET Common Language Runtime (CLR). This book teaches both core C# language concepts and how to wisely employ C# idioms and object-oriented design patterns to exploit the power of C# and the CLR.

    This book is both a rapid tutorial and a permanent reference. You’ll quickly master C# syntax while learning how the CLR simplifies many programming tasks. You’ll also learn best practices that ensure your code will be efficient, reusable, and robust. Why spend months or years discovering the best ways to design and code C# when this book will show you how to do things the right way from the start?

    • Comprehensively and concisely explains both C# 2008 and C# 2010 features
    • Focuses on the language itself and on how to use C# 2010 proficiently for all .NET application development.
    • Concentrates on how C# features work and how to best use them for robust, high-performance code

    What you’ll learn

    • How C# works with and exploits the CLR
    • How to use arrays, collections, and iterators
    • How to handle events with delegates and anonymous functions
    • How to design and use generic types and methods
    • How to thread efficiently and robustly
    • How C# anonymous types, lamba expressions, and extension methods work and how to use them

    Who is this book for?
    If you’re an experienced C# programmer, you need to understand how C# has changed with C# 2010. If you’re an experienced object-oriented programmer moving to C#, you want to ramp up quickly in the language while learning the latest features and techniques. In either case, this book is for you. The first three chapters succinctly present C# fundamentals, for those new to or reviewing C#. The rest of the book covers all the major C# features, in great detail, explaining how they work and how best to use them. Whatever your background or need, you’ll treasure this book for as long as you code in C# 2010.

    About the Apress Accelerated Series
    You already know your industry, but you need to accelerate your skills in a particular area and reach best practices standards in one step. The Apress Accelerated Series of books will ramp you up quickly to industry standards in the area of your choice, by accelerating you through core information and using the professional’s pace to cover best practices and special extras that only a more experienced programmer in the area could give you.

     點擊下載: 《Accelerated C# 2010》英文版

  • [CHM] C語言 函數速查手冊

    此編譯的HTML的幫助文件更方便大家查找,
    通過目錄或者搜尋更容易找到C語言函數!

    下載:C語言函數速查手冊

  • 《Visual C# 2010與UML開發實戰》分享電子書

    Visual C# 2010與UML開發實戰 是一本以物件導向思維設計、相當適合教學及.NET應用程式開發人員自學的工具書。除了介紹如何以C#語言實作.NET Framework 4.0應用程式,並搭配Visual Studio 2010塑模工具在實際的專案中應用UML,簡化應用程式設計以及程式碼開發和維護的成本。

    213213.jpg

    Visual C#程式基礎與WPF應用程式

      根據作者多年的授課經驗,實際示範以.NET Framework 4.0、Visual Studio 2010工具來建立WPF應用程式,並從中學習C#程式語言的語法。

    C#開發實務與進階議題

      進一步探究:物件導向封裝、繼承、多型的觀念,並以人資系統來實作C#語法、資料與變數宣告語法,以及資料型別、判斷式與迴圈、宣告陣列及集合語法、偵錯與例外狀況處理,以及自訂副程式等實務常見的實用主題。

    新一代程式開發與UML實戰

      結合WF架構,開發以工作流程為主的應用程式,透過WCF整合遠端元件功能,搭配LINQ減化程式存取資料時的程式碼。並詳述如何以UML技術,讓企業級企統獲得良好的系統開發、詮釋、改善與維護。這些全新的開發觀點都將在書中呈現最完整的樣貌。

    目錄:

    第一篇  Visual C#程式基礎與WPF應用程式

    第01章 .NET Framework 4與Visual Studio 2010簡介
    第02章 建立WPF視窗應用程式
    第03章 WPF基本控制項的使用
    第04章 建立WPF表單選單與工具列

    第二篇  C#程式語言基礎與進階議題

    第05章 物件導向基礎
    第06章 資料與變數
    第07章 判斷式與迴圈
    第08章 陣列與集合
    第09章 偵錯與例外狀況處理
    第10章 自訂副程式
    第11章  物件導向進階

    第三篇 新一代程式開發與UML實戰

    第12章  LINQ
    第13章  Windows應用程式開發-WF
    第14章  WCF Service
    第15章  使用UML建立專案模型

    免費電子書: 《Visual C# 2010與UML開發實戰》

  • 初學者編程入門:C++指針使用方法

    在下列函數聲明中,為什麼要同時使用*和&符號?以及什麼場合使用這種聲明方式經常會有人問到這樣的問題。本文試圖通過一些實際的指標使用經驗來解釋這個問題。仔細看一下這種聲明方式,確實有點讓人迷惑。在某種意義上,”*”和”&”是意思相對的兩個東西,把它們放在一起有什麼意義呢?

    為了理解指標的這種做法,我們先復習一下C/C++編程中無所不在的指標概念。我們都知道MYCLASS*的意思:指向某個物件的指標,此物件的類型為MYCLASS。
    void func1(MYCLASS *pMyClass);  
    // 例如: MYCLASS* p = new MYCLASS;
    func1(p);

    上面這段代碼的這種處理方法想必誰都用過,創建一個MYCLASS物件,然後將它傳入func1函數。現在假設此函數要修改pMyClass:
    void func1(MYCLASS *pMyClass)
    {
    DoSomething(pMyClass);
    pMyClass =
    // 其他物件的指標
    } 

    第二條語句在函數過程中只修改了pMyClass的值。並沒有修改調用者的變數p的值。如果p指向某個位於位址0x008a00的對象,當func1返回時,它仍然指向這個特定的物件。 (除非func1有bug將堆弄亂了,完全有這種可能。)

    現在假設你想要在func1中修改p的值。這是你的權利。調用者傳入一個指標,然後函數給這個指標賦值。以往一般都是傳雙指標,即指標的指標,例如,CMyClass**。
    MYCLASS* p = NULL;
    func1(&p);
    void func1(MYCLASS** pMyClass);
    {
    *pMyClass = new MYCLASS;
       ……
       }  

    調用func1之後,p指向新的物件。在COM編程中,你到處都會碰到這樣的用法–例如在查詢物件介面的QueryInterface函數中:
    interface ISomeInterface
    {
    HRESULT QueryInterface(IID &iid, void** ppvObj);
       ……
       };
       LPSOMEINTERFACE p=NULL;
    pOb->QueryInterface(IID_SOMEINTERFACE, &p); 

    此處,p是SOMEINTERFACE類型的指標,所以&p便是指標的指標,在QueryInterface返回的時候,如果調用成功,則變數p包含一個指向新的介面的指標。

    如果你理解指針的指針,那麼你肯定就理解指針引用,因為它們完全是一回事。如果你像下面這樣聲明函數:
    void func1(MYCLASS *&pMyClass);
       {
       pMyClass = new MYCLASS;
       ……
       }

    其實,它和前面所講得指標的指標例子是一碼事,只是語法有所不同。傳遞的時候不用傳p的地址&p,而是直接傳p本身:  
    MYCLASS* p = NULL;
       func1(p); 

    在調用之後,p指向一個新的物件。一般來講,引用的原理或多或少就像一個指標,從語法上看它就是一個普通變數。所以只要你碰到*&,就應該想到**。也就是說這個函數修改或可能修改調用者的指標,而調用者象普通變數一樣傳遞這個指標,不使用位址操作符&。至於說什麼場合要使用這種方法,我會說,極少。 MFC在其集合類中用到了它–例如,CObList,它是一個CObjects指標列表。
    class CObList : public CObject
    {
       ……
       // 獲取/修改指定位置的元素
       CObject*& GetAt(POSITION position);
       CObject* GetAt(POSITION position) const;
       };  

    這裏有兩個GetAt函數,功能都是獲取給定位置的元素。區別何在呢?區別在於一個讓你修改列表中的物件,另一個則不行。所以如果你寫成下面這樣:
    CObject* pObj = mylist.GetAt(pos);

    則pObj是列表中某個物件的指標,如果接著改變pObj的值:
    pObj = pSomeOtherObj;

    這並改變不了在位置pos處的物件位址,而僅僅是改變了變數pObj。但是,如果你寫成下面這樣:
    CObject*& rpObj = mylist.GetAt(pos);

    現在,rpObj是引用一個列表中的物件的指標,所以當改變rpObj時,也會改變列表中位置pos處的物件位址–換句話說,替代了這個物件。這就是為什麼CObList會有兩個GetAt函數的緣故。一個可以修改指標的值,另一個則不能。注意我在此說的是指標,不是對象本身。這兩個函數都可以修改物件,但只有*&版本可以替代物件。

    在C/C++中引用是很重要的,同時也是高效的處理手段。所以要想成為C/C++高手,對引用的概念沒有透徹的理解和熟練的應用是不行的。

    原文:http://www.hkitn.com/article.php/4041