色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

類和動態(tài)內(nèi)存分配(二)

冬至子 ? 來源:iDoitnow ? 作者:艱默 ? 2023-07-18 10:47 ? 次閱讀

1. 轉(zhuǎn)換函數(shù)

  • 若要將單個值轉(zhuǎn)換為類類型,則需要創(chuàng)建對應(yīng)的類構(gòu)造函數(shù),其原型大致如下:

c_name(type_name value)

其中,c_name為類名,type_name是要轉(zhuǎn)換的類型名稱。( 注: 在使用的時候要注意隱式轉(zhuǎn)換可能帶來的誤解和錯誤,恰當?shù)氖褂胑xplicit,防止其被用于隱式轉(zhuǎn)換)

  • 若要將類轉(zhuǎn)換為其他類型,則需要創(chuàng)建類轉(zhuǎn)換成員函數(shù),其原型大致如下:

operator type_name()

雖然該函數(shù)沒有聲明返回類型,但需要在函數(shù)實現(xiàn)的的最后返回所需類型的值。

2. 嵌套結(jié)構(gòu)和類

在類聲明中聲明的結(jié)構(gòu)、類或枚舉,它們的作用域為整個類。這種聲明不會創(chuàng)建數(shù)據(jù)對象,而只是指定了可以在類中使用的類型。如果聲明是在私有部分進行的,那么只能在這個類中使用。如果是在公部分聲明的,則該結(jié)構(gòu)不僅可以在類中使用,而且還可以通過類名::嵌套結(jié)構(gòu)的方式在類的外面使用。

3. 成員初始化列表

對于類Queue,

class Queue
{
public: 
  const int qsize;
  int num;
}

在編寫Queue構(gòu)造函數(shù)的時候,由于qsize是常量,所以只能對其進行初始化,但不能對其進行賦值,從概念上來說,在調(diào)用構(gòu)造函數(shù)的時候,對象是在構(gòu)造函數(shù)括號中代碼執(zhí)行之前就被創(chuàng)建,因此,對于const數(shù)據(jù)成員,必須在執(zhí)行到構(gòu)造函數(shù)體之前,即創(chuàng)建對象的時進行初始化。c++提供了一個特殊的語法來完成上述工作,即成員初始化列表。

成員初始化列表由逗號分隔的初始化列表組成(前面帶冒號)。它位于參數(shù)列表的右括號之后、函數(shù)體左括號之前。對于Queue其構(gòu)造函數(shù)可寫為:

Queue::Queue(int qs):qsize(qs)
{
  num = 0;
}
//或者
Queue::Queue(int qs):qsize(qs),num(0)  //初始化列表也適用于普通的數(shù)據(jù)成員
{
}

對于被聲明為引用的類成員,也只能使用類成員初始化列表的方法進行初始化。

:不能將成員初始化列表用于構(gòu)造函數(shù)之外的其他類方法。

4. 類內(nèi)初始化

c++11允許類內(nèi)初始化,即在類定義中進行初始化。

例如:

class Queue
{
  private:
  ...
    Node * front = NULL;
    enum {Q_SIZE = 10};
    Node * rear = NULL;
    int items = 0;
    const int qsize = Q_SIZE;
}

這與使用成員初始化列表等價,然而,使用成員初始化列表的構(gòu)造函數(shù)將覆蓋相應(yīng)的類內(nèi)初始化。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 轉(zhuǎn)換器
    +關(guān)注

    關(guān)注

    27

    文章

    8694

    瀏覽量

    147086
  • Queue
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    7261
  • C++語言
    +關(guān)注

    關(guān)注

    0

    文章

    147

    瀏覽量

    6989
收藏 人收藏

    評論

    相關(guān)推薦

    動態(tài)內(nèi)存管理模塊的設(shè)計原理與實現(xiàn)

    Fense 通過設(shè)立一個雙向鏈表(struct Head *stHead)來保存所有被分配動態(tài)內(nèi)存塊的信息。鏈表中的每個節(jié)點對應(yīng)一個動態(tài)內(nèi)存塊,節(jié)點中包括此內(nèi)存大小、
    的頭像 發(fā)表于 06-30 08:05 ?2349次閱讀
    <b class='flag-5'>動態(tài)內(nèi)存</b>管理模塊的設(shè)計原理與實現(xiàn)

    C語言知識總結(jié):動態(tài)內(nèi)存分配

    動態(tài)內(nèi)存分配就 是指在程序執(zhí)行的過程中動態(tài)分配或者回收存儲空間的分配內(nèi)存的方法。
    發(fā)表于 10-24 15:52 ?855次閱讀

    使用C語言實現(xiàn)簡單動態(tài)內(nèi)存分配

    首先要明白為何需要動態(tài)內(nèi)存分配,熟悉C語言的讀者應(yīng)該對這個比較熟悉,需要一段內(nèi)存時會使用malloc函數(shù)來申請所需要大小的內(nèi)存,函數(shù)返回一段內(nèi)存
    發(fā)表于 07-28 16:26 ?642次閱讀
    使用C語言實現(xiàn)簡單<b class='flag-5'>動態(tài)內(nèi)存</b><b class='flag-5'>分配</b>

    C語言程序設(shè)計中動態(tài)內(nèi)存分配如何實現(xiàn)

    C語言程序設(shè)計中,動態(tài)內(nèi)存分配如何實現(xiàn),需要注意哪些問題?
    發(fā)表于 09-28 16:53 ?1355次閱讀

    內(nèi)存動態(tài)內(nèi)存分配實現(xiàn)

    第27章 STM32H7的TCM,SRAM等五塊內(nèi)存動態(tài)內(nèi)存分配實現(xiàn)本章教程為大家分享一種DTCM,SRAM1,SRAM2,SRAM3和SRAM4可以獨立管理的動態(tài)內(nèi)存管理方案,在實
    發(fā)表于 08-03 07:14

    怎樣去定義CDC所需要的動態(tài)內(nèi)存分配函數(shù)呢

    為什么使用動態(tài)內(nèi)存分配的CDC驅(qū)動自動生成的代碼不能正常工作呢?怎樣去定義CDC所需要的動態(tài)內(nèi)存分配函數(shù)呢?
    發(fā)表于 12-06 07:04

    嵌入式C語言動態(tài)內(nèi)存分配

    動態(tài)內(nèi)存分配:1、malloc、memset、free在日常寫代碼時需要注意以下幾點:malloc分配內(nèi)存時,需要 if語句 判斷malloc是否成功
    發(fā)表于 12-14 06:37

    請問使用動態(tài)內(nèi)存分配安全嗎?

    想在C語言程序員之間開始一個激烈的,或者說有爭議的討論很簡單,只需要問:“使用動態(tài)內(nèi)存分配安全嗎?”使用動態(tài)內(nèi)存分配安全嗎?在C語言程序開發(fā)中,動態(tài)
    發(fā)表于 12-15 06:10

    使用動態(tài)內(nèi)存分配安全嗎

    [導(dǎo)讀]想在C語言程序員之間開始一個激烈的,或者說有爭議的討論很簡單,只需要問:“使用動態(tài)內(nèi)存分配安全嗎?”想在C語言程序員之間開始一個激烈的,或者說有爭議的討論很簡單,只需要問:“使用動態(tài)內(nèi)存
    發(fā)表于 12-15 07:44

    動態(tài)內(nèi)存分配是什么意思

    所謂動態(tài)內(nèi)存分配(Dynamic Memory Allocation)就是指在程序執(zhí)行的過程中動態(tài)分配或者回收存儲空間的分配
    發(fā)表于 12-17 08:17

    RTThread的動態(tài)內(nèi)存空間該如何去分配

    關(guān)于rtt的動態(tài)內(nèi)存空間分配,想問一下以下我的幾點理解是對的嗎1、我看RTT NANO和MASTER版本的動態(tài)內(nèi)存分配好像不太一樣,我的理解是MASTER版本的
    發(fā)表于 08-31 14:34

    動態(tài)內(nèi)存錯誤的靜態(tài)檢測

    內(nèi)存泄漏、空指針引用等動態(tài)內(nèi)存錯誤在/,/LL等支持動態(tài)內(nèi)存操作的程序中普遍存在在程序中,動態(tài)內(nèi)存管理錯誤是導(dǎo)致動態(tài)內(nèi)存錯誤的根本原因
    發(fā)表于 06-10 16:29 ?52次下載
    <b class='flag-5'>動態(tài)內(nèi)存</b>錯誤的靜態(tài)檢測

    嵌入式中需要用到動態(tài)內(nèi)存

    所謂動態(tài)內(nèi)存分配(Dynamic Memory Allocation)就是指在程序執(zhí)行的過程中動態(tài)分配或者回收存儲空間的分配
    的頭像 發(fā)表于 07-27 08:11 ?3060次閱讀

    靜、動態(tài)內(nèi)存的優(yōu)劣比較

    動態(tài)內(nèi)存分配不像數(shù)組等靜態(tài)內(nèi)存分配方法那樣需要預(yù)先分配存儲空間,而是由系統(tǒng)根據(jù)程序的需要即時分配
    的頭像 發(fā)表于 08-06 18:25 ?6664次閱讀

    嵌入式C語言中的動態(tài)內(nèi)存管理和動態(tài)內(nèi)存分配

    動態(tài)內(nèi)存管理同時還具有一個優(yōu)點:當程序在具有更多內(nèi)存的系統(tǒng)上需要處理更多數(shù)據(jù)時,不需要重寫程序。
    發(fā)表于 08-15 17:16 ?2279次閱讀
    主站蜘蛛池模板: 国产成人国产在线观看入口| 国产成人精品男人的天堂网站| 国产传媒18精品A片在线观看 | 九九精彩视频在线观看视频| 我的美女奴隶| 二次元美女扒开内裤喷水| 欧美XXXX69学生HD| 748亚洲大胆国模人体| 久久精品国产亚洲AV天美18| 亚洲精品第五页中文字幕| 国产精品久久大陆| 伸进同桌奶罩里摸她胸作文| 不知火舞vs精子| 欧美亚洲精品真实在线| 99九九精品国产高清自在线 | 特级aa 毛片免费观看| 都市妖奇谈有声| 日韩中文无线码在线视频| WWW久久只有这里有精品| 久久视频在线视频观看精品15| 亚洲免费一区| 花蝴蝶在线观看免费中文版高清| 小夫妻天天恶战| 国产精品爽爽久久久久久蜜桃| 色即是空 BT| 二级片免费看| 色爰情人网站| 国产不卡无码高清视频| 世界第一黄暴漫画家| 国产成人免费高清在线观看| 神马电影我不卡国语版| 国产成人小视频| 我的美女奴隶| 国产人A片在线乱码视频| 小舞被爆操| 交换邻居波多野结衣中文字幕| 亚洲人日本人jlzzy| 久久热精品18国产| 91九色网址| 人人艹人人| 国产精品www视频免费看|