原创 繼承與多態【C++】

兩個類間的關係:組合與繼承 繼承:可以使用現有類的所有功能,並在無需編寫原來的類的情況下對這些功能進行擴展。 通過繼承創建的新類稱爲“子類”或“派生類”。   被繼承的類稱爲“基類”,“父類”或“超類”。 繼承的作用:代碼的複用 訪問

原创 智能指針【C++】

智能指針的作用: 堆內存的申請和釋放都由程序員自己管理。 普通指針:需要程序員手動釋放,容易造成內存泄漏(比如忘記手動釋放,或者程序異常)和二次釋放的問題。 智能指針:程序結束自己釋放,不需要程序員手動釋放。所以不存在內存泄漏 智能指

原创 c++【基礎(二)】

【1】空struct是0,而空類是1的原因   struct Data{ }; struct Data data(變量); sizeof(Data)=0; struct類型,在C語言中,是定義結構體。data只需要開闢內存就可以了

原创 c++【基礎(一)】

面向對象(oop):c++    Java    PHP     Python 面向對象(oop)語言的四(三)大特徵是什麼? 抽象-------如果問三大特徵,省略這個 封裝/隱藏:在語言上,是通過訪問限定符體現的(public公共變量

原创 迭代器模式(一)【C++】

本期重點:迭代器,友元函數 vector(向量):C++中的一種數據結構,確切的說是一個類,它相當於一個動態的數組,當程序員無法知道自己需要的數組的規模多大時,用其來解決問題可以達到最大節約空間的目的。 首先,我們可以自己實現一個字符

原创 迭代器模式(二)【C++】

本期重點:空間配置器,容器 空間配置器:把內存的開闢和對象的構造分開。把對象的析構和內存的釋放分開。 空間配置器的實現如下: // 給容器實現空間配置器Allocator template<typename T> struct Allo