亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

解鎖即可觀看《物聯網/嵌入式工程師》完整課程視頻

物聯網/嵌入式工程師

重磅升級:新增硬件電路設計與實戰,讓你軟硬通吃,同級PK無敵!行業風口、政策傾斜,新晉熱門高薪不內卷!0基礎一站式就業完整路徑,搶占先發優勢!

【第1周】邁進供不應求的物聯網/嵌入式行業大門
【第2周】C語言進階-編程思想
【第3周】C語言高級進階
【第4周】C語言項目實戰與《階段筆試》
【第5周】數據結構-線性結構、非線性結構等
【第6周】排序與復雜度&數據結構項目實戰
【第7周】Shell編程和Makefile工程管理
【第8周】Linux文件IO和標準IO
【第9周】Linux下文件操作項目實踐與階段評測
【第10周】Linux 多進程、多線程、IO模型
【第11周】Linux 項目實戰-實現并發服務器模型與企業筆試
【第12周】網絡基礎和UDP Socket編程
【第13周】TCP Socket編程和WireShark抓包分析
【第14周】網絡編程項目實戰-網絡視頻監控與企業筆試
【第15周】從C到C++
【第16周】軟件設計模式與C++11新特性
【第17周】項目實戰-C++語言實現五子棋游戲與企業筆試
【第18周】嵌入式產品人機交互必備-QT框架
【第19周】項目實戰-QT開發音樂播放器
【第20周】智能硬件開發-ARM核介紹和基礎外設
【第21周】智能硬件開發-單片機常用外設
【第22周】stm32芯片-智能硬件項目實戰與企業筆試
【第23周】大廠必備- linux內核與文件系統移植
【第24周】嵌入式開發-系統移植-bootloader、yocto
【第25周】嵌入式底層核心技能-Linux設備驅動初級
【第26周】嵌入式底層核心技能-Linux設備驅動中級
【第27周】嵌入式底層核心技能-Linux設備驅動高級1
【第28周】嵌入式底層核心技能-Linux設備驅動高級2
【第29周】智能家居項目實戰之Linux智能網關端開發
【第30周】智能家居項目實戰之STM32單片機設備端開發
【第31周】人臉指紋識別考勤機設計與實戰
【第32周】硬件電路設計-電路基礎知識
【第33周】STM32最小系統 - 硬件電路設計實戰項目(一)
【第34周】CAN總線分析儀 - 硬件電路設計實戰項目(二)
【第35周】4路輸入輸出控制器 - 硬件電路設計實戰項目(三)
【第36周】8路邏輯分析儀 - 硬件電路設計實戰項目(四)
【第37周】項目答辯和就業指導&獨立開發階段-三大熱門領域項目
章節
問答
課簽
筆記
評論
占位
占位

霸道總裁的員工:類

我們上一小節中介紹了面向對象的思想,這一小節開始,我們來具體看看在 C++ 中應該如何實現面向對象。

類,是 C++ 實現面向對象最基礎的部分。類其實和之前學過的結構體十分相似,你可以認為類是結構體的升級版。之后的學習中你會更加理解類?,F在,我們只簡單的來介紹一下類。

類的申明

在 C++ 中,可以用下面的代碼申明一個員工類:

class Staff
{

};

可以像使用結構體一樣使用這個類:

#include <stdio.h>

class Staff
{

};

int main(int argc,char **argv)
{
    Staff st;
    return 0;
}

分文件編程

我們在此之前都是把代碼放到一個文件里,但是這樣在實際工程中肯定是不行的,我們不可能把所有的代碼都寫到一個文件夾里面。而在 C++ 中我們就常常把類定義到不同的文件里面,把每個類都獨立起來,這樣代碼的耦合性就會降低,方便維護。

在 C++ 中,我們可以把一個類寫到兩個文件里面,一個是后綴為 .h 或者 .hpp 的頭文件,一個是后綴為 .cpp 的實現文件。我們先在開發環境里新建一個類。輸入類名是 Staff。

可以看到 VS 為我們創建類兩個文件,Staff.h 和 Staff.cpp。Staff.h 文件為定義,Staff.cpp 為實現。

在分了文件之后,我們想要在 main 函數中引用這個類,就需要使用 #include “Staff.h” 將頭文件引入進來。

實例化

在新建了一個類之后,我們就可以根據這個類產生對象了。根據類產生對象的過程叫做實例化。這個過程就像是公司招聘員工一樣,幸運的是,我們作為程序的老板,并不需要和現實中一樣去張貼招聘啟示。在 C++ 中,“招聘“員工,只需要用以下的代碼就可以了。

#include "Staff.h"

int main(int argc,char **argv)
{
    // 我們就這樣實例化了三個員工
    Staff st1;
    Staff st2;
    Staff st3;

    return 0;
}

這樣分配,我們將這三個“員工”分配到了棧上,同樣的,可以把他們分配到堆內存上面去。

new delete

要將對象分配到堆上,需要用到另外兩個關鍵字,new 和 delete。new 用來分配對象,delete 用來刪除對象。new 會返回一個指針,在使用完畢后,要通過 delete 把這個指針指向的地址釋放掉。

#include "Staff.h"

int main(int argc,char **argv)
{
    // 我們就這樣實例化了三個員工
    Staff * st1 = new Staff();
    Staff * st2 = new Staff();
    Staff * st3 = new Staff();

    // 記得釋放
    delete st1;
    delete st2;
    delete st3;

    return 0;
}

當然,我們現在這個類還什么都不能干呢,接下來的課程中,我們將逐步介紹類的功能。

任務

?不會了怎么辦
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務號

綁定后可得到

  • · 粉絲專屬優惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關注公眾號
關注后,及時獲悉本課程動態

舉報

0/150
提交
取消
全部 精華 我要發布
全部 我要發布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?