91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++程序基礎知識有哪些

發布時間:2021-11-29 16:22:15 來源:億速云 閱讀:318 作者:iii 欄目:編程語言

本篇內容主要講解“C++程序基礎知識有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C++程序基礎知識有哪些”吧!

class  A   {   };   main()   {    A  a;     cout<<sizeof(a)<<endl;   }

C++程序的知識很多,有四庫全書《C++程序設計》,《C Primer》,這本文章只想談談我個人所看到的用到的知識。加上自己的理解。很多東西可能沒有系統化,而且,知識也是想到那寫到那。

首先談談 類的對象的大小,

 class  A   {   };   main()   {    A  a;     cout<<sizeof(a)<<endl;

那么:

class A   {     char m;   };   main()   {   A  a;   cout<<sizeof(a)<<endl;   }

會打印結果為多少啊。這個問題叫Alignment,有一次,我就遇到這樣郁悶的問題,我們的工程中代碼都是用數組傳送數據,比如坐標 x,y,那么就這樣賦值

*(int *)&w[0]=x;   *(int *)&w[4]=y;

(或許大家很少用),這樣的代碼有一個缺點,送數據,取數據十分不方便,而且,由于有下標,因此,代碼不好利用循環結構(還有不是四位的數據) 。只能一位一位的賦值,還有一個問題,就是,當工程一個約定變了的時候,所有的代碼都要改動。不好reuse。

因此,我希望借助結構strcut,或者class來改造程序代碼,但是就遇到數據對齊問題。

比如,我定義一個C++程序結構:

struct A  {   char type;  int y;  };  char  buf[MAX];   A a;  memcpy(buf,&a,sizeof(a));

但是,卻發現buf[]的內容有三個不是我需要的內容。其實,我看了一些資料,說這是為了字節對齊,CPU存取數據是按照四位存取,這樣,就不會取四位數據,一位是char type,三位是y的數據。作為編程者對這個有可能就不熟悉。

還有類似的問題,以后,再敘。類的數據的訪問權限數據有三種權限:public,private,protected。C++程序是面向對象的語言,因此,它的許多概念來源于現實生活。比如這個權限問題就可以這么解釋。基本類相當于父親,子類相當于孩子。

還有一個友元類,相當于朋友。比如,對于父親有的東西(成員變量)是對任何人都共享的,大家都可以知道的,不是什么秘密。那么,用public來描述這樣的東西。如果,有的東西,是只有不是外人不能知道的。

也就是,兒子,好朋友都可以分享的秘密的話,那么,這樣的東西用protected描述。同樣,還有的東西,大人不想讓小孩知道,但是,卻對好朋友不保留,這樣的事情,在現實生活中也是有的,那么,這樣的用private描述。

到此,相信大家對“C++程序基礎知識有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

保定市| 襄樊市| 吴堡县| 华池县| 育儿| 荆州市| 澳门| 同心县| 泗水县| 新巴尔虎右旗| 彝良县| SHOW| 镇宁| 台州市| 舟山市| 根河市| 开原市| 德令哈市| 桂平市| 平陆县| 汨罗市| 台中市| 青阳县| 阳江市| 蒙自县| 杭锦后旗| 东莞市| 新乡市| 武功县| 尚义县| 青田县| 浮山县| 稷山县| 香港| 邵阳县| 光山县| 海林市| 永春县| 民权县| 广灵县| 灵丘县|