C++筆試面試準備(整理) | it編輯入門教程
文章推薦指數: 80 %
C++筆試面試準備(整理). 分类C++ ... 1、C++中指針與引用的區別 ... class node { int i; //放在位置0,位置區間[0~3] char c; //1 < n, 那麼放置起始位置應該是1的 ...
it編輯入門教程
首頁
最新教程
HTML
CSS
JavaScript
jQuery
Vue
Bootstrap
Python3
Python2
Java
C
C++
C#
Go
SQL
首頁
最新教程
HTML
CSS
JS
C++
C++霧中風景18:C++20,從concept開始
圖論——歐拉圖原理及其應用
oj在線判題程序設計競賽c++小技巧
C++實現LRU緩存——LeetCode146
const修飾指針
C++內存分區模型
C++struct和class
聊聊第一個開源項目(內網穿透)-CProxy
C++筆試面試準備(整理)
分类C++
轉載:https://blog.csdn.net/ljh0302/article/details/81098764?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161494999616780262523772%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=161494999616780262523772&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-1-81098764.first_rank_v2_pc_rank_v29_10&utm_term=C%2B%2B%E7%AC%94%E8%AF%95%E9%9D%A2%E8%AF%95%E9%A2%98
1、C++中指針與引用的區別
1)指針是一個新的變量,存儲了另一個變量的地址,我們可以通過訪問這個地址來修改另一個變量;
引用只是一個別名,還是變量本身,對引用的任何操作就是對變量本身進行操作,以達到修改變量的目的
2)引用只有一級,而指針可以有多級
3)指針傳參的時候,還是值傳遞,指針本身的值不可以修改,需要通過解引用才能對指向的對象進行操作。
引用傳參的時候,傳進來的就是變量本身,因此變量可以被修改。
2、結構體(struct):
將不同類型的數據組合成一個整體,sizeof(struct)是內存對齊後所有成員長度的總和。
3、內存對齊:(轉自:http://www.pinlue.com/article/2021/01/2100/0011500966600.html)
int
short
long
char
cahr*
float
double
32位
4
2
4
1
4
4
8
64位
4
2
8
1
8
4
8
例1:(假設指定對齊字節為8,那麼n=min(8,4)=4)
classnode{inti;//放在位置0,位置區間[0~3]charc;//1
3)#define定義的常量是不可以用指針去指向,const定義的常量可以用指針去指向該常量的地址
4)#define可以定義簡單的函數,const不可以定義函數
5、重載:同一類中,函數名相同,參數和返回值不同(相同範圍(同一個類中)、函數名字相同、參數不同、virtual關鍵字可有可無)
覆蓋:派生類覆蓋基類的虛函數,實現接口的重用(不同範圍(基類和派生類)、函數名字相同、參數相同、基類中必須有virtual關鍵字(必須是虛函數))
重寫:派生類屏蔽了其同名的基類函數(不同範圍(基類和派生類)、函數名字相同、參數不同或者參數相同且無virtual關鍵字)
6、new、delete、malloc、free之間的關係
new/delete,malloc/free都是動態分配內存的方式
1)malloc對開闢的空間大小嚴格指定,而new只需要對象名
2)new為對象分配空間時,調用對象的構造函數,delete調用對象的析構函數
既然有了malloc/free,C++中為什麼還需要new/delete呢?
因為malloc/free是庫函數而不是運算符,不能把執行構造函數和析構函數的功能強加於malloc/free.
7.STL庫:(轉載:https://blog.csdn.net/qq_41431457/article/details/88898925)
STL(StandardTemplateLibrary),即標準模板庫,是一個具有工業強度的,高效的C++程序庫。
vector:是支持隨機訪問的迭代器
vector的動態增加大小的時候,並不是在原有的空間上持續新的空間(無法保證原空間的後面還有可供配置的空間),而是以原大小的兩倍另外配置一塊較大的空間,然後將原內容拷貝過來,並釋放原空間。
在VS下是1.5倍擴容,在GCC下是2倍擴容。
#include
voidprint(vector
延伸文章資訊
- 1C/C++ - 常見C 語言觀念題目總整理(適合考試和面試)
常見的C/C++ 問題總整理,增強C 語言觀念並練習一些題目,努力脫離考試苦海吧! (非從零開始,適合稍有C/C++ 基礎的人閱讀。 ... 等題目(筆試考題)
- 2【C/C++】【面試】 科技業筆試常考觀念題: 資料型態(data type)
- 3C++筆試面試準備(整理) | it編輯入門教程
C++筆試面試準備(整理). 分类C++ ... 1、C++中指針與引用的區別 ... class node { int i; //放在位置0,位置區間[0~3] char c; //1 < n...
- 4c++ 筆試試題參考.pdf
成功高中101 學年高一上程式語言C++ 期末考筆試試卷班級座號: 選擇題共四十題(每題2.5 分答對給分,答錯不倒扣). #include<iostream> using namespace ...
- 5面試C/C++ 觀念整理
這裡有些題目是來自網路上MTK面試的C考古題,另外又加入了一些易搞混的觀念,幫自己統整一下,也希望能幫助在求職的讀者,面試的過程真的心很累啊!