原创 比較順序表和鏈表的優缺點

1.比較順序表和鏈表的優缺點,他們分別在什麼場景下使用它。順序表支持隨機訪問,單鏈表不支持隨機訪問。順序表插入/刪除數據效率很低,時間複雜度爲O(N)(除尾插尾刪),單鏈表插入/刪除效率更高,時間複雜度爲O(1)。順序表的CPU高速緩存效率

原创 類的靜態成員

類裏面static修飾的成員,成爲靜態類成員。類的靜態成員是該類型的所有對象共有。static的作用及用法(1)函數體內static變量的作用範圍爲該函數體,不同於auto變量,該變量的內存只被分配一次,因此其值在下次調用時仍維持上次的值;

原创 繼承與靜態成員

基類定義了static成員,則整個繼承體系裏面只有一個這樣的成員。無論派生出多少個子類,都只有一個static成員實例。#include<iostream>#include<string.h>using namespace std;clas

原创 作業

1.題目:判斷ABCD四個表達式中值是否正確,若正確寫出a的值。int a=4;A     a+=(a++);     先計算a++,這時候a的值還是4,第二次運算時a=a+(a++)=5+4=9B     a+=(++a);     先計

原创 筆試題

第一組       1.燒一根不均勻的繩,從頭燒到尾總共需要1個小時。現在有若干條材質相同的繩子,問如何用燒繩的方法來計時一個小時十五分鐘呢?   2.你有一桶果凍,其中有***、綠色、紅色三種,閉上眼睛抓取同種顏色的兩個。抓取多少個就可以

原创 單鏈表面試題

#pragma once#include<stdio.h>#include<assert.h>#include<malloc.h>#include<stdlib.h>typedef int DataType;typedef struct N

原创 內聯&const&enum&宏

【熱點考題-擴展學習】內聯&const&enum&宏【C++可以使用技術去替代宏】C++的內聯是對C函數宏的一種改進,const替代常量宏。對於函數宏C++提供了inline替代。儘量以const、enum,inline替代宏。--《eff

原创 用c++和模板寫雙鏈表

#pragma once#include <assert.h>//template<class T>//class List;template<class T>class Node{ template<class T> friend cla

原创 繼承與靜態成員

基類定義了static成員,則整個繼承體系裏面只有一個這樣的成員。無論派生出多少個子類,都只有一個static成員實例。#include<iostream>#include<string.h>using namespace std;clas

原创 筆試題

1.static有什麼用途?(請至少說明兩種)    1)在函數體,一個被聲明爲靜態的變量在這一函數被調用過程中維持其值不變。    2) 在模塊內(但在函數體外),一個被聲明爲靜態的變量可以被模塊內所用函數訪問,但不能被模塊外其它函數訪問

原创 鑽石繼承和虛鑽石繼承的對象模型

關於C++對象內存佈局的資料和書籍也有很多,比如陳皓老師的博客:1、C++對象的內存佈局(上)2、C++對象的內存佈局(下)白楊:RTTI、虛函數和虛基類的實現方式、開銷分析及使用指導左手爲你畫猜:C++類對象內存模型與成員函數調用分析(上

原创 純虛函數和虛函數的區別

虛函數爲了重載和多態的需要,在基類中是有定義的,即便定義是空,所以子類中可以重寫也可以不寫基類中的此函數! 純虛函數在基類中是沒有定義的,必須在子類中加以實現,很像java中的接口函數! 虛函數 引入原因:爲了方便使用多態特性,我們常常需要

原创 註釋轉換

#include <stdio.h>#include <errno.h>#include <assert.h>typedef enum STATE{ SUCCESS, // 成功 FILE_ERROE, // 文件錯誤 NO_MATCH,

原创 拷貝構造函數是必須要帶引用類型的參數的, 而且這也是編譯器強制性要求的

在C++中, 構造函數,拷貝構造函數,析構函數和賦值函數(賦值運算符重載)是最基本不過的需要掌握的知識。 但是如果我問你“拷貝構造函數的參數爲什麼必須使用引用類型?”這個問題, 你會怎麼回答? 或許你會回答爲了減少一次內存拷貝? 很慚愧的是

原创 c++面試題

題目(一):我們可以用static修飾個類的成員函數,也可以用const修飾類的成員函數(寫在函數的最後表示不能修改成員變量,不是指寫在前面表示返回值爲常量)。請問:能不能同時用static和const修飾類的成員函數?分析:答案是不可以。