Time of Update: 2017-02-27
參考型別也稱別名,它是個很有趣的東西。在c++ 下你可以把它看作是另外的一種指標,通過參考型別我們同樣也可以間接的操作對象,參考型別主要是用在函數的形式參數上,通常我們使用它是把類對象傳遞給一個函數。引用對象採用類型名加上&符號和名稱的方式進行定義。例如:(int &test;),這裡我們就定義了一個int類型的名為test 的引用,但是int
Time of Update: 2017-02-27
const修飾符可以把對象轉變成常數對象,什麼意思呢?意思就是說利用const進行修飾的變數的值在程式的任意位置將不能再被修改,就如同常數一樣使用!使用方法是:const int a=1;//這裡定義了一個int類型的const常數變數a;但就於指標來說const仍然是起作用的,以下有兩點要十分注意,因為下面的兩個問題很容易混淆!我們來看一個如下的例子:#include <iostream>using namespace std;void main(void){const int
Time of Update: 2017-02-27
對於眾多人提出的c/c++中指標難學的問題做個總結:指標學習不好關鍵是概念不清造成的,說的簡單點就是書沒有認真看,指標的學習猶如人在學習饒口令不多看多學多練是不行的,下面是兩個很經典的例子,很多書上都有,對於學習的重點在於理解*x和x的理解,他們並不相同,*x所表示的其實就是變數a本身,x表示的是變數a在記憶體中的地址,如果想明白可以輸出觀察cout<<*x"|"x;,當定義了int
Time of Update: 2017-02-27
在完整描述思想之前,我們先看一下如下的例子,這個例子中的加運算子多載是以非成員函數的方式出現的://程式作者:管寧//網站:www.cndev-lab.com//所有稿件均有著作權,如要轉載,請務必著名出處和作者#include <iostream>using namespace std;class Test{ public: Test(int a) { Test::a = a; } friend
Time of Update: 2017-02-27
把"2007-11-4"這種數字日期轉換為"二〇〇七年十一月四號"這種中文日期。using System;using System.Text;using System.Text.RegularExpressions;namespace AndyDateConvert { class DateConvert { private static DateConvert m_DateConvert = null; private char[
Time of Update: 2017-02-27
C#語言還是比較常見的東西,這裡我們主要介紹C#裝箱和拆箱,包括介紹調用該 TestAlias() 函數等方面。C#裝箱和拆箱還是別名許多 C#.NET 的書上都有介紹 int -> Int32 是一個裝箱的過程,反之則是拆箱的 過程。許多其它變數類型也是如此,如:short <-> Int16,long <-> Int64 等。對於一般的程式員來說,大可不必去瞭解這一過程,因為這些C#裝箱和拆箱的
Time of Update: 2017-02-27
摘要Jace是一種免費的開放原始碼的工具,它使我們能夠輕鬆地開發JNI(Java本機介面)代碼。本篇文章詳細地分析了JNI
Time of Update: 2017-02-27
前言DirectShow是微軟公司提供的一套在Windows平台上進行流ApsaraVideo for Media
Time of Update: 2017-02-27
第一篇-正確書寫代碼1.簡介2.書寫乾淨的代碼3.使用異常及異常處理能力4.使用記錄(logging)機制5.結合使用記錄機制與類的異常處理機制6.處理您代碼外產生的異常7.你的回合8.著作權說明簡介這篇文章,我將從最基本的開始談起。但希望可以涉及更廣的層面,而不僅僅是為你的程式除錯(debug)。你將會看到,我認為除錯(debugging)這個字的全部意義,並不只是通過ide的內建機制來啟動並執行。我希望在這篇小小的文章結束時,幾乎每個讀者都可以學到至少是一件新東西,並把它藏到你的兵器庫中。記
Time of Update: 2017-02-27
在前面的章節中我們已經接觸過遞增運算子的重載,那時候我們並沒有區分前遞增與後遞增的差別,在通常情況下我們是分別不出++a與a++的差別的,但的確他們直接是存在明顯差別的。先看如下代碼:#include <iostream>using namespace std;int main(){ int a=0; ++(++a);//正確,(++a)返回的是左值 (a++)++;//錯誤,(a++)返回的不是左值 system("pause");
Time of Update: 2017-02-27
這裡的寫法,可以避免使用 for 迴圈,減少棧空間記憶體的使用和減少運行時的計算開銷!#include <iostream>#include <string>using namespace std;void print_char(char* array[]);//函數原形聲明void main(void){ char*
Time of Update: 2017-02-27
編程之前,有必要複習一下C++中物件導向的一些基本概念。我們知道,C++與C相比有許多優點,主要體現在封裝性(Encapsulation)、繼承性(Inheritance)和多態性(Polymorphism)。封裝性把資料與操作資料的函數組織在一起,不僅使程式結構更加緊湊,並且提高了類內部資料的安全性;繼承性增加了軟體的可擴充性及代碼重用性;多態性使設計人員在設計程式時可以對問題進行更好的抽象,有利於代碼的維護和可重用。Visual
Time of Update: 2017-02-27
Reference counting讓我想起了Java,當如果想用C++來實現Java的能力的話,那Reference counting必不可少。Reference counting可以節省程式的運行成本,大量的構造、析構、分配、釋放和拷貝的代價被省略。實現classRCObject{ public: RCObject():refCount(0),shareable(true){}
Time of Update: 2017-02-27
滾滾長江東逝水,浪花淘盡英雄。雖說是個人英雄的時代已經成為過去,但我們仍然不能對這樣的榜樣們有所忘懷,他們是WPS求伯君、CCDOS嚴援朝、2.13吳曉軍、四通利方王志東、CCED朱崇君、UCDOS鮑嶽橋等。因為他們不僅是成名的優秀程式員,也不僅是在寫文章時所必須想到的人物,更主要的是他們激蕩了很多批程式員的編程熱情,堅定了學會彙編和C就能走天下的決心和勇氣,他們代表著以往中國軟體業的輝煌。多年來,我們一直就這樣追隨著,也不曾懷疑過有什麼不對的地方。即使在DOS已成為過去,Windows和Int
Time of Update: 2017-02-27
就指向指標的指標,很早以前在說指標的時候說過,但後來發現很多人還是比較難以理解,這一次我們再次仔細說一說指向指標的指標。先看下面的代碼,注意看代碼中的註解:#include <iostream>#include <string>using namespace std;void print_char(char* array[],int len);//函數原形聲明void main(void){//-----------------------------段1--------
Time of Update: 2017-02-27
#include <iostream>void main(void){ if("test"=="test") { cout<<"相等"; } else { cout<<"不相等"; }}上面的代碼我們測試兩個內容為test的字串常量是否相等,按照常理,應該是相等的,這些在一些過程式語言中會得到相等的結論,但在c/c++
Time of Update: 2017-02-27
函數重載是用來描述同名函數具有相同或者相似功能,但資料類型或者是參數不同的函數管理操作的稱呼。我們來舉一個實際應用中的例子來說明問題:我們要進行兩種不同資料類型的和操作為了實現它,在c語言中我們就要寫兩個不同名稱的涵數來進行區分例如:int testa(int a,int b)和float testb(float
Time of Update: 2017-02-27
在c++中,為瞭解決一些頻繁調用的小函數大量消耗棧空間或者是叫棧記憶體的問題,特別的引入了inline修飾符,表示為內嵌函式。可能說到這裡,很多人還不明白什麼是棧空間,其實棧空間就是指放置程式的局部資料也就是函數內資料的記憶體空間,在系統下,棧空間是有限的,如果頻繁大量的使用就會造成因棧空間不足所造成的程式出錯的問題,函數的死迴圈遞迴調用的最終結果就是導致棧記憶體空間枯竭。下面我們來看一個例子:#include <iostream>#include
Time of Update: 2017-02-27
對於數組和多維陣列的內容這裡就不再討論了,前面的教程有過說明,這裡主要講述的數組和指標類型的關係,通過對他們之間關係的瞭解可以更加深入的掌握數組和指標特性的知識!一個整數類型數組如下進行定義:int
Time of Update: 2017-02-27
布爾類型對象可以被賦予文字值true或者false,所對應的關係就是真與假的概念。我們通常使用的方法是利用他來判斷條件的真與假,例如下面的代碼:#include <iostream>using namespace std;void main(void){ bool found = true; if (found) { cout << "found條件為真!" << endl;