C++基礎
這里會有一些關于C++語法和用法的介紹。也許很多文章來自裝載,但是我們是單純的目的來轉載和學習這些知識!
摘要: 首先static的最主要功能是隱藏,其次因為static變量存放在靜態存儲區,所以它具備持久性和默認值0.
閱讀全文
摘要: 本科期間居然沒有開數據結構的課程!最近自學了這些,整理筆記可以分享下!
閱讀全文
摘要: 指針與引用看上去完全不同(指針用操作符’*’和’->’,引用使用操作符’.’),但是它們似乎有相同的功能。指針與引用都是讓你間接引用其他對象。你如何決定在什么時候使用指針,在什么時候使用引用呢?
閱讀全文
摘要: 在C++中,內存分成5個區,他們分別是堆、棧、自由存儲區、全局/靜態存儲區和常量存儲區。
閱讀全文
摘要: 跟exe有個main或者WinMain入口函數一樣,DLL也有一個入口函數,就是DllMain。以“DllMain”為關鍵字,來看看MSDN幫助文檔怎么介紹這個函數的。
The DllMain function is an optional method of entry into a dynamic-link library (DLL)。(簡要翻譯:對于一個Dll模塊,DllMain函數是可選的。)這句話很重要,很多初學者可能都認為一個動態鏈接庫肯定要有DllMain函數。其實不然,像很多僅僅包含資源信息的DLL是沒有DllMain函數的
閱讀全文
摘要: 先來闡述一下DLL(Dynamic Linkable Library)的概念,你可以簡單的把DLL看成一種倉庫,它提供給你一些可以直接拿來用的變量、函數或類。在倉庫的發展史上經歷了“無庫-靜態鏈接庫-動態鏈接庫”的時代。
靜態鏈接庫與動態鏈接庫都是共享代碼的方式,如果采用靜態鏈接庫,則無論你愿不愿意,lib中的指令都被直接包含在最終生成的EXE文件中了。但是若使用DLL,該DLL不必被包含在最終EXE文件中,EXE文件執行時可以“動態”地引用和卸載這個與EXE獨立的DLL文件。靜態鏈接庫和動態鏈接庫的另外一個區別在于靜態鏈接庫中不能再包含其他的動態鏈接庫或者靜態庫,而在動態鏈接庫中還可以再包含其他的動態或靜態鏈接庫。
閱讀全文
摘要: 在我們實際用軟件時,經常可看到許多動態連接庫。動態連接庫有其自身的優點如節省內存、支持多語種等功能,而且,當DLL中的函數改變后,只要不是參數的改變調用起的函數并不需要重新編譯。這在編程時十分有用。至于其他妙處,各位在電腦雜志、書籍中都能看到,我這里再說就是廢話了.這次小弟我所要講的是如何在VC5.0中如何做自己的Win32 DLLs,各位要做自己的動態連接庫,首先要知道DLL在VC5.0中都有哪幾種分類。VC支持三種DLL,它們是:
1.Non-MFC Dlls
2.Regular Dlls
3.Extension Dlls Note:翻譯措辭不當,故遇到術語是引用原詞
Non-MFC DLL:指的是不用MFC的類庫結構,直接用C語言寫的DLL,其輸出的函數一般用的是標準C接口,并能被非MFC或MFC編寫的應用程序所調用。LL,Regular DLL:和下述的Extension Dlls一樣,是用MFC類庫編寫的。明顯的特點是在源文件里有一個繼承CWinApp的類。其又可細分成靜態連接到MFC和動態連接到MFC上的。但靜態連接到MFC的動態連
閱讀全文
摘要: 靜態鏈接:每個應用程序使用函數庫,必須擁有一份庫的備份。多個應用程序運行時,內存中就有多份函數庫代碼的備份。
動態連接庫:多個應用程序可以共享一份函數庫的備份。
閱讀全文
摘要: 標準庫
(被包含于中)提供兩個幫助生成偽隨機數的函數: 閱讀全文
摘要: 1) 在View中獲得Doc指針2) 在App中獲得MainFrame指針3) 在View中獲得MainFrame指針4) 獲得View(已建立)指針5) 獲得當前文檔指針6) 獲得狀態欄與工具欄指針7) 獲得狀態欄與工具欄變量8) 在Mainframe獲得菜單指針9) 在任何類中獲得應用程序類10) 從文檔類取得視圖類的指針(1)11) 在App中獲得文檔模板指針12) 從文檔模板獲得文檔類指針13) 在文檔類中獲得文檔模板指針14) 從文檔類取得視圖類的指針(2)15) 從一個視圖類取得另一視圖類的指針
閱讀全文
摘要: mfc框架結合sdk的學習筆記(一)
閱讀全文
摘要: 對于很多初學者來說,往往覺得回調函數很神秘,很想知道回調函數的工作原理。本文將要解釋什么是回調函數、它們有什么好處、為什么要使用它們等等問題,在開始之前,假設你已經熟知了函數指針
閱讀全文
摘要: 處理在程序的運行時刻發生的錯誤,對于任何一個程序設計者來講都是不陌生的。對于錯誤的處理,我們有很多方法,本篇著重介紹的是C++中的錯誤異常處理。
閱讀全文
摘要: 首先看一下sizeof在msdn上的定義:
The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t.
看到return這個字眼,是不是想到了函數?錯了,sizeof不是一個函數,你見過給一個函數傳參數,而不加括號的嗎?sizeof可以,所以sizeof不是函數。網上有人說sizeof是一元操作符,但是我并不這么認為,因為sizeof更像一個特殊的宏,它是在編譯階段求值的。
閱讀全文
摘要: sizeof是C語言的一種單目操作符,如C語言的其他操作符++、--等。它并不是函數。sizeof操作符以字節形式給出了其操作數的存儲大小。操作數可以是一個表達式或括在括號內的類型名。操作數的存儲大小由操作數的類型決定。
閱讀全文
摘要: sizeof()功能:計算數據空間的字節數
閱讀全文
摘要: 在網上和QQ群里廣發帖,尋求解決16進制字符串CString 轉為 BYTE[] 數組的方法。費盡周折在一個大學同學的幫助下,問題解決了!在這簡單分析下加深印象,同時也希望對有需要的朋友有參考作用:
閱讀全文
摘要: 游戲規則很簡單,如果你在調用new時使用了[],則你在調用delete時也使用[],如果你在調用new的時候沒有[],那么你也不應該在調用時使用[]。
閱讀全文
摘要: ASSERT()是一個調試程序時經常使用的宏,在程序運行時它計算括號內的表達式,如果表達式為FALSE (0), 程序將報告錯誤,并終止執行。如果表達式不為0,則繼續執行后面的語句。
閱讀全文
摘要: 剛接觸VC編程的朋友往往對許多數據類型的轉換感到迷惑不解,本文將介紹一些常用數據類型的使用。
閱讀全文
摘要: 結構體可以看做是一種自定義的數據類型,它還有一個很重要的特性,就是結構體可以相互嵌套使用,但也是有條件的,結構體可以包含結構體指針,但絕對不能在結構體中包含結構體變量。
閱讀全文
摘要: 簡單的來說,結構體就是一個可以包含不同數據類型的一個結構,它是一種可以自己定義的數據類型,它的特點和數組主要有兩點不同,首先結構體可以在一個結構中聲明不同的數據類型,第二相同結構的結構體變量是可以相互賦值的,而數組是做不到的,因為數組是單一數據類型的數據集合,它本身不是數據類型(而結構體是),數組名稱是常量指針,所以不可以做為左值進行運算,所以數組之間就不能通過數組名稱相互復制了,即使數據類型和數組大小完全相同。
閱讀全文
摘要: 本篇是一篇介紹指針的本質是什么。 在相當一部分的C++教程中,講到指針時,基本上都會舉swap(int a,int b)這個 數據交換的例子。我也同樣愿意舉這個例子作為講述指針的開始。
閱讀全文
摘要: 在編程工作中常會遇到在一個“類”中通過函數指針調用成員函數的要求,如,當在一個類中使用了C++標準庫中的排序函數qsort時,因qsort參數需要一個“比較函數”指針,如果這個“類”使用某個成員函數作“比較函數”,就需要將這個成員函數的指針傳給qsort供其調用。本文所討論的用指針調用 “類”的成員函數包括以下三種情況:
閱讀全文
摘要: 考慮數組的指針的時候我們要同時考慮類型和維數這兩個屬性。換一句話,就是說一個數組排除在其中存儲的數值,那么可以用類型和維數來位置表示他的種類。
閱讀全文
摘要: 指針,在C/C++語言中一直是很受寵的;幾乎找不到一個不使用指針的C/C++應用。用于存儲數據和程序的地址,這是指針的基本功能。用于指向整型數,用整數指針(int*);指向浮點數用浮點數指針(float*);指向結構,用對應的結構指針(struct xxx *);指向任意地址,用無類型指針(void*)。
有時候,我們需要一些通用的指針。在C語言當中,(void*) 可以代表一切;但是在C++中,我們還有一些比較特殊的指針,無法用(void*)來表示。事實上,在C++中,想找到一個通用的指針,特別是通用的函數指針簡直是一個“不可能任務”。
C++是一種靜態類型的語言,類型安全在C++中舉足輕重。在C語言中,你可以用void*來指向一切;但在C++中,void*并不能指向一切,就算能,也失去了類型安全的意義了。類型安全往往能幫我們找出程序中潛在的一些BUG。
閱讀全文
摘要: c++博大精深,這是很多了解c++的人的感覺。越是深入,越是覺得她會給你很好的訓練---讓你成為真正的程序設計者。
我想從她的初始化工作著手,試圖展現其一角,希望能有助于您提高學c++和程序設計的興趣---然后,去發現、開拓吧,當你把你的智慧融入進去以后,一行行程序就不僅是程序了,因為它就有了生命。
閱讀全文
摘要: 這是一篇我所見過的關于指針的最好的入門級文章,它可使初學者在很短的時間內掌握復雜的指針操作。雖然,現在的Java、C#等語言已經取消了指針,但作為一個C++程序員,指針的直接操作內存,在數據操作方面有著速度快,節約內存等優點,仍是很多C++程序員的最愛。指針就像是一把良劍,就看你怎么去應用它!
閱讀全文