国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

指針和引用

2019-11-08 02:21:32
字體:
來源:轉載
供稿:網友

一.指針和引用的區別: 1.指針可以指向空而引用不可以 2.使用引用不需要檢測合法性而使用指針需要 3.指針可以更改指向目標而引用不可以 4.僅當指向一個對象并且一旦指向一個對象就不會改變指向那么應該使用引用

二.const常量賦值時,必須同時初始化

三. char c[] = “helloworld”;//局部變量對應的是內存中的棧 char* c = “helloworld”;//全局變量對應的是內存中的全局區域,且保存在字符串常量區,屬于只讀數據段,不像全局變量保存在靜態存儲區

四.

int* ptr;ptr = (int*)0x8000;*ptr = 0xaabb;

因為指向的是未知是否被使用的內存,所以第三句的時候會崩潰

五.

#include <iostream>using namespace std;class A{public: int a; A() { a = 1; } void PRint() { cout << a << endl; }};class B:public A{public: int a; B() { a = 2; }};int main(){ B b; b.print(); cout << b.a << endl; return 0;}

答案 1 2

六. 1.函數的形參只有在調用到實參的時候才會分配空間 2.函數必須在它被調用之前聲明,哪怕函數的定義出現在主函數之前但是也要在調用前聲明且實際上這個跟main()函數無關 3.若一個函數沒有return語句,則什么值都不返還這句話是錯誤的,因為主函數main中可以不寫return語句,因為編譯器會自動返回0,但是一般函數沒有return 語句是不行的

七. (1)float(**def)[10]; def是一個二級指針,指向一個一維數組的指針,數組元素都是float (2)double* (*gh)[10]; gh是一個指針,它指向一個一維數組,數組元素都是double* (3)int*((*b)[10]); 就跟”int*(b)[10]”是一樣的,是一維數組的指針,數組元素都是int (4)int (*(*F)(int,int))(int) F是一個函數的指針,指向的函數的類型是有兩個int參數并且返回一個函數指針的函數,返回的函數指針指向有一個int參數且返回int的函數

八.malloc/free和new/delete的區別 malloc和free是C++/C語言的標準庫函數,new/delete是C++的運算符。它們都可用于申請動態內存和釋放內存。 因為對象在創建的同時要自動執行構造函數,對象在消亡之前要自動執行析構函數,由于malloc/free是庫函數而不是運算符,不在編輯器的控制權限之內,不能夠歐巴執行構造函數和析構函數的任務強加于malloc/free 因此C++語言需要一個能完成動態內存分配和初始化工作的運算符new,以及一個能完成清理與釋放內存工作的運算符delete。new/delete不是庫函數,而是運算符。

九. 智能指針的用法 auto_ptr pt(new T);


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高安市| 贵溪市| 宝兴县| 娱乐| 平度市| 威海市| 宜章县| 大邑县| 平遥县| 驻马店市| 麻城市| 东源县| 武隆县| 兴仁县| 淮滨县| 巴彦县| 太湖县| 江城| 遵义县| 墨江| 晋江市| 南郑县| 祁门县| 宿松县| 苏尼特左旗| 疏附县| 休宁县| 奈曼旗| 长治市| 阿合奇县| 秦皇岛市| 昌宁县| 乐平市| 双辽市| 什邡市| 堆龙德庆县| 宁强县| 吴忠市| 丽江市| 建始县| 富顺县|