原创 C++知識點5

1.      允許:int I = 5; int *p = &I; int * &pt = p;   這時候*pt就是*p的值5。 2.      內置函數:針對被頻繁使用的函數,可以使用內置(內聯)函數,在編譯的時候,將調用的函數代碼

原创 C++知識點4

1.      引用:使得聲明的引用和變量指向同一個地址,在函數傳遞的時候,傳遞引用和傳遞變量指針有相同的改變實參的作用。形參將獲得實參的地址,使得實參和形參指向同一個地址。 2.      引用和指針變量作爲函數形參的區別:指針需要另外

原创 C++知識點6

1.      使用::a,可以訪問全局變量a。 2.      字符串變量:頭文件#include <string>  string str = “China”;  str[3] = ‘N’;  則str = “ChiNa”; 而且字符

原创 筆試題14

1.      如果我要在別的文件引用本文件的全局變量你有哪幾種方法?extern、使用函數傳參、使用引用頭文件的方式。 2.      全局變量可不可以定義在可被多個.C文件包含的頭文件中?爲什麼? 答:可以,在不同的C文件中以stat

原创 C++知識點1

1.      設置輸出數據寬度,使用<iomanip>頭文件中的setw(n),來設置輸出寬度,右對齊。 2.      例如:cout<<setw(5)<<a<<endl<<setw(5)<<b<<endl; 3.      單個變量

原创 筆試題11

1.      C++中的重載、覆蓋和隱藏: (1)函數重載發生在同一個類或頂層函數中,同名的函數具有不同的參數列表 (2)函數覆蓋發生在繼承層次中,該函數在父類中必須是virtual,而子類的該函數必須與父類具有相同的參數列表 (3)函

原创 C++ new VS malloc 區別

C語言使用malloc動態分配空間,C++使用new動態分配空間,功能是差不多的,但他們的區別還是很大的。 1 new 關鍵字是C++的一部分,malloc是由C語言庫提供的函數 2 new以具體類型爲單位進行內存分配,malloc只以

原创 NorFlash和NandFlash區別

Flash編程原理都是隻能將1寫爲0,而不能將0寫成1.所以在Flash編程之前,必須將對應的塊擦除,而擦除的過程就是將所有位都寫爲1的過程,塊內的所有字節變爲0xFF.因此可以說,編程是將相應位寫0的過程,而擦除是將相應位寫1的過程,兩

原创 C++知識點15

1.      指向對象成員函數定義:例:void (Time::*p2)(); 定義p2指向Time類中共有成員函數的指針變量。P2 = &Time::getTime;使得指針變量指向一個公有的函數。(在VC++系統中,也可以省略&,與

原创 C++知識點21

1.      動態分配空間:Box *pt = new Box; 或者可以直接 = new Box(12,30,14);進行對象的初始化。 2.      對象的賦值和複製:賦值:對已有的對象進行相互的賦值;賦值:從無到有的建立一個對象

原创 C++知識點14

1.      析構函數的調用:是在函數執行完畢之後調用還是執行完畢之前就調用? 2.      普通函數的函數名:即爲該函數的入口地址?29點中的爲什麼要取地址?(答:C語言) 3.      指向對象成員函數的方法:1)函數參數的類型

原创 C++知識點20

1.      指向常對象的常指針變量:Time * const p; 2.      指向常對象的指針變量:const Time *p;不能通過p來改變對象的成員數據 Time const t1 / const Time t1 t

原创 C++知識點23

1.      友元類:友元類是單向的,如果聲明B是我A類的友元類,那麼B就可以訪問我A的數據成員,但是並不代表我A可以訪問B的數據成員;友元類也不能傳遞。 2.      關於建立C++工程:一個類聲明在一個.h中,不需要包含頭文件,要

原创 C++知識點11

1.      類和結構體一樣,不能在類中直接對成員變量賦值初始化。 2.      構造函數:不具有任何類型,不返回任何值。必須與類名相同,類外定義的話,用Time::Time(){…}這種方式定義。 3.      帶參數初始化表對數

原创 Windows環境 安裝dlib(python) 總結

 安裝dlib 需要先安裝boost和cmake,而且cmake需要使用c編譯器,所以需要裝VS,版本最好VS2015以上 1 安裝cmake 官網下載安裝包:https://cmake.org/download/ 我下載了win64