日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++类、函数、指针

發布時間:2025/3/20 c/c++ 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++类、函数、指针 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、初始化所有指針。

2、

(1)指向常量的指針:

(2)常量指針:指針本身為常量:

3、若循環體內部包含有向vector對象添加元素的語句,則不能使用范圍for循環。

4、字符數組要注意字符串字面值結尾處還有一個空字符。

5、數組的指針及數組的引用

6、C++中多維數組指的是數組的數組。

7、要使用for循環語句處理多維數組,除了最內層的循環外,其他所有循環的控制變量都應是引用類型。

8、異常檢測&異常處理

throw&try(catch)

9、如果函數無需改變引用形參的值,最好將其聲明為常量引用。

10、(1)構造函數

是成員函數的一種,可以有參數,不能有返回值(void也不行)。

作用是對對象進行初始化,例如給成員變量賦初值。若定義類時沒有寫構造函數,編譯器會生成默認的無參數的構造函數,不進行任何操作。

對象生成時構造函數自動被調用,對象一旦生成,就不能在其上執行構造函數。

一個類可以有多個構造函數。

(2)拷貝構造函數

幾個原則:

C++ primer p406 :拷貝構造函數是一種特殊的構造函數,具有單個形參,該形參(常用const修飾)是對該類類型的引用。當定義一個新對象并用一個同類型的對象對它進行初始化時,將顯示使用拷貝構造函數。當該類型的對象傳遞給函數或從函數返回該類型的對象時,將隱式調用拷貝構造函數。

X::X( X& ) X::X(const X &)

二者選一,后者能以常量對象作為參數。

C++支持兩種初始化形式:

拷貝初始化?int a = 5;?和直接初始化?int a(5);?對于其他類型沒有什么區別,對于類類型直接初始化直接調用實參匹配的構造函數,拷貝初始化總是調用拷貝構造函數,也就是說:

A y = x;  //拷貝初始化,是初始化語句非賦值語句,會調用拷貝構造函數,與下一條代碼等價 A y(x); //調用拷貝構造函數

必須定義拷貝構造函數的情況:

只包含類類型成員或內置類型(但不是指針類型)成員的類,無須顯式地定義拷貝構造函數也可以拷貝;有的類有一個數據成員是指針,或者是有成員表示在構造函數中分配的其他資源,這兩種情況下都必須定義拷貝構造函數。

什么情況使用拷貝構造函數:

類的對象需要拷貝時,拷貝構造函數將會被調用。以下情況都會調用拷貝構造函數:

  • (1)用一個對象去初始化同類的另一個對象。
  • (2)若某一個函數有一個參數是類A的對象,那么該函數在被調用時,類A的拷貝構造函數將被調用。
  • (3)如果函數的返回值是類A的對象,則函數返回時,A的拷貝構造函數將被調用。

(3)特殊的構造函數:類型轉換構造函數:

實現類型的自動轉換。

特點:只有一個參數,且不是拷貝構造函數。在使用時,編譯系統會自動調用,建立一個臨時對象/臨時變量。

(4)析構函數

特點:名字與類名相同;前面加~;沒有參數和返回值;一個類最多有一個析構函數。

對象消亡時自動被調用:釋放分配的空間

編譯期自動生成的缺省析構函數不涉及釋放用戶申請的內存釋放等清理工作。

對象數組的生命期結束時,對象數組的每個元素的析構函數都會被調用到。

先構造的后析構。

11、靜態成員 static:靜態成員變量、靜態成員函數,不需通過對象就能訪問,本質是全局的。

普通成員變量每個對象各自有一份,靜態成員變量一共一份,被所有成員共享。必須在定義類的文件中對靜態成員變量進行一次說明/初始化,否則編譯能通過,鏈接無法通過。

  sizeof運算符不會計算靜態成員變量。

calss CMyclass {int n;static int s; }; 則 sizeof(CMyclass) = 4

普通成員函數必須具體作用域某個對象,而靜態成員函數并不具體作用于某個對象

  • 靜態成員函數沒有 this 指針,只能訪問靜態成員(包括靜態成員變量和靜態成員函數)。
  • 普通成員函數有 this 指針,可以訪問類中的任意成員;而靜態成員函數沒有 this 指針。

12、類的多繼承之環狀繼承

13、純虛函數

想要在基類中定義虛函數,以便在派生類中重新定義該函數更好地適用于對象,但是在基類中又不能對虛函數給出有意義的實現,這個時候就會用到純虛函數。

告訴編譯器,函數沒有主體,上面的虛函數是純虛函數

?14、常引用不能對實參值進行改變。

  指向常量的指針,也叫指針常量,該指針變量指向的是一個常量,指針所指的常量不允許改變,但是該指針可以指向其他地址。

  常量指針又叫常指針,指的是聲明的一個指針變量是一個常量,不可通過常量指針改變其指向的內容。但是該指針所指的對象是可以發生改變的。

  不能把常量指針賦值非常量指針,反過來可以。除非強制類型轉換,例如:(int *)

  函數參數為常量指針時,可以避免不小心改變參數指針所指向地址的內容。

15、用new實現動態內存分配

分配變量:P=new T; eg:

int *p; p=new int; *pn=5;

分配數組:P=new T[N];

int *p; p = new int[100; p[10]=12;

new的返回值類型 T*

用delete釋放內存空間:

delete p; delete []p;

?16、內聯函數:

函數調用都是有開銷的,若某個函數執行快但被調用很多次,開銷大,使用內聯函數。編譯器處理對內聯函數的調用語句時,將整個函數代碼插入到調用語句處,而不會產生調用函數的語句。

inline int max(int a,int b) {if(a>b) return a;return b; }

內聯成員函數:(1)inline? (2)將整個函數體放在類定義的內部

17、函數重載:一個多個函數,名字不同但參數個數或參數類型不同。

18、類成員可訪問范圍

public public protected

類的成員函數內部可以訪問:(1)當前對象的全部屬性、函數 (2)同類其他成員的全部屬性、函數

類的成員函數以外的地方只能訪問類對象的公有成員(public)

19、負數用十六進制表示,首先將其表示為二進制,變反碼再變補碼

20、成員對象

成員對象:一個類的成員變量是另一個類的對象。包含成員對象的類叫封閉類

使用初始化列表設計封閉類的構造函數:類名::構造函數(參數表):成員變量1(參數表),成員變量2(參數表),......{......}

成員函數初始化列表里的參數:任意復雜的表達式;函數/變量/表達式中的函數,變量有定義。

當封閉類對象生成時,先執行所有成員對象的構造函數,再執行封閉類的構造函數。成員對象的構造函數調用順序與成員對象在類中的說明順序一致,與在成員函數初始化列表中出現的順序無關。

21、友元(friend)

(1)友元函數:一個類的友元函數可以訪問該類的私有成員;將一個類的成員函數(包括構造、析構函數)定義為另一個類的友元。

(2)友元類:A是B的友元類,則A的成員函數可以訪問B的私有成員。Note:友元類之間的關系不能傳遞、不能繼承。

22、this指針:指向成員函數所作用的對象

Note:靜態成員函數中不能使用this指針!因為靜態成員函數并不具體作用于某個對象,因此靜態成員函數的真實參數個數就是程序中寫出的參數個數。

23、常量

(1)常量對象 const

(2)常量成員函數:類的成員函數說明后面可以加const。

  執行期間不應修改其所作用的對象,因此,常量成員函數中不能修改成員變量的值(靜態成員變量除外),也不能調用同類的非常量成員函數(靜態成員函數除外)。

Note:兩個成員函數,名字和參數表都一樣,但一個是const,則算函數重載。

(3)常引用 const int &r = n

  不能通過常引用改變其引用的變量?,一般可作為函數參數。

void PrintObj(const Sample &o)

轉載于:https://www.cnblogs.com/zhuzhudong/p/10453427.html

總結

以上是生活随笔為你收集整理的C++类、函数、指针的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 免费黄色av网址 | 在线成人一区 | 蜜桃传媒一区二区亚洲 | 三级av免费 | julia一区二区 | 欧美蜜桃视频 | 青青草精品 | 亚洲喷水 | 中文字幕免费 | 久久免费国产 | 久操久 | 天天射天天干天天舔 | 欧美视频一区二区三区四区 | 老熟妇仑乱视频一区二区 | 日本中文字幕有码 | 色丁香综合 | 国产午夜精品福利视频 | 午夜福利毛片 | 2019天天干| 草草地址线路①屁屁影院成人 | 人妻视频一区二区三区 | 日韩性生活大片 | 久久久精品小视频 | 中文字幕精品在线观看 | xxx在线播放 | а√在线中文网新版地址在线 | 手机av免费 | 91美女精品 | 亚洲精品一线二线三线 | 国产性猛交xxxⅹ交酡全过程 | 桃色av | 日韩精品视频一区二区三区 | 无码精品黑人一区二区三区 | 国产八区 | 伊人一区| jzz国产 | 欧美日韩国产精品一区二区 | 齐天大性床战铁扇公主 | 一区二区三区 中文字幕 | 日韩欧美精品一区二区 | 中国在线观看免费视频 | 国产色| 日日噜噜噜噜久久久精品毛片 | 西西大胆午夜视频 | 国产对白视频 | 国产色秀| 狠狠干2024| 91玉足脚交嫩脚丫在线播放 | 一区二区三区四区五区视频 | 欧美视频免费看 | 国产suv精品一区二区33 | 激情视频网站在线观看 | 国产精品美女久久久久久久久 | 国产精品国产三级国产普通话对白 | 永久免费精品影视网站 | 波多野结衣中文字幕一区二区 | 免费级毛片 | 免费观看视频一区二区 | 天天网综合 | 亚洲中文字幕无码av | 日本一级网站 | 国产福利小视频在线观看 | 美女扒开尿口让男人捅爽 | 国产精品腿扒开做爽爽爽挤奶网站 | 蜜桃在线一区 | 毛片毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 羞羞漫画在线播放 | www污污 | 四虎影视成人 | 国产白袜脚足j棉袜在线观看 | 国产调教在线观看 | jizz一区 | 亚洲精品国产成人无码 | 婷婷激情综合网 | 亚洲hhh| 国产精品夜夜夜爽张柏芝 | 日本三级片在线观看 | 成人一区二区在线 | 日韩a级片 | 欧美激情成人在线 | 久久人久久 | 污污小说在线观看 | 东北熟女一区二区三区 | 在线看中文字幕 | 性欧美丰满熟妇xxxx性久久久 | 严厉高冷老师动漫播放 | 成人28深夜影院 | 香蕉久久久久久久av网站 | 网站黄色在线观看 | 久艹av| 久久三级网站 | 少妇高潮喷水在线观看 | 91香蕉国产在线观看 | www性| 国产r级在线 | 波多野结衣国产 | 涩涩网站入口 | 美女自拍偷拍 | 国产亚洲制服欧洲高清一区 |