1樓:匿名使用者
看樣子前三個是一個類a拷貝建構函式,第四個是一個類a的普通成員函式。
a(const a&a);-------a 在此函式中不可改變其值。
a(a&a);--------a 在此函式中可改變其值。
a(a a);-------a是非引用引數。
a fun(a a);-------就是普通成員函式。
拷貝建構函式什麼意思,請自行查詢答案。
2樓:尺丶八
第一個是拷貝建構函式 和第二個差不多 不同的是這裡的a不能被修改 第3個我自己起名叫二次拷貝建構函式吧 因為他還要執行前面兩個函式中的一個或是無參建構函式 第4個是class a裡的一個fun函式 形參是a型別
3樓:夏水秋池
第一個為拷貝建構函式,有的編譯器只認第一種是拷貝建構函式,當然有的編譯器把第二種也算上,但拷貝建構函式最好寫成第一種
第二種也可以作為拷貝建構函式,不過引數不是const的,因此跟第一個函式不同
第三種不是拷貝建構函式,傳進去的不是一個引用,而是一個a類的物件第四種不是建構函式,因為有返回值,為a型別,而引數就是a類的物件,跟上面三個完全不一樣
c++語句const a &是什麼意思?用了什麼語法 40
4樓:
const a ¶;
const用來增加c++裡面的安全性,即是限制許可權(那些不可寫);
這裡是說明para引數是const型別,不可對它進行任何修改(任何寫);&則表示一個變數的引用,即一個變數的別名
5樓:
const 是隻讀,或者是所說的 “常量”。a 在這裡是不是對類名啊? 而& 表示引用。
實際上應該這樣看
a t1; // 實類物件 t1
a & t2=t1; //t2 是物件t1 的引用const a & t2= t1; //表示常變數t2 是物件t1 的引用
根據這個思路一點點去理解。
6樓:匿名使用者
懷疑a是一個自定義型別,比如一個類,&這裡應該是引用。
7樓:匿名使用者
作為引數 傳遞地址
作為返回值,返回資料地址。
const 限制是否可以通過a修改內容
8樓:匿名使用者
a型別的常引用,一般多用在形參中,函式體中不得改變形參
c++陣列名a和&a的區別
9樓:匿名使用者
一個是名字,一個是引用。
10樓:智者總要千慮
c/c++裡面的陣列名字會退化為指標,所以陣列名a實際指的是陣列的第一個元素的地址。而陣列名作為指標來講有特殊性,它正在它所指向的記憶體區域中,&a的值和a的數值是相同的(可以輸出觀察一下),但是型別和意義不同。而指標的加法操作和指向的資料型別密切相關。
比如:int a[10]; a就相當於int *,如果是對它加1(a + 1)是相當於a + 1 * sizeof(int)。但是&a的型別則相當於int **,是所謂指向陣列的指標,是陣列元素型別的二級指標,對它加1是相當於 &a + 1 * sizeof(a)的,所以會偏移一個陣列長度。
關於c++的問題a(const a &a);裡邊a & a是引用的意思嗎?引用不應該是 (資料型別 & 引用變數名=變數名)
11樓:
是 a是個引用
a是使用者自定義型別 也是一種資料型別
c語言定義變數如:int const a;與const int a;有什麼區別?
12樓:匿名使用者
baiint const *a 和const int *a 沒有區別,都是du
一個zhi指向一個int常量的指標,這個指標本身dao以後可以重賦值指向別的int常量。
而 int *const a; 表示a是一個指標常量,初始化的時候必須固定指向一個int變數,之後就不能再指向別的地方了。
#include
int main()
13樓:匿名使用者
在定義變來量的時候是沒有說明區自別的;例bai如:const int a; int const a;但是定義此類變數時du,一般zhi
放在前面!
const int *a和dao int * const a這個區別就很多了,第一個是保證指標所指的資料不能被修改,第二個是指標不能被修改
用c宣告商品類,用c宣告乙個商品類
給你改了下 你試試吧 include include class product product product char n,int p,int q product product 我認為你定義的建構函式 product char n,int p,int q,int nm,int money 建構...
c語言宣告陣列必須要設定範圍,C語言宣告陣列必須要設定範圍
知道錯 你知道為什麼 int num i j 首先編譯程式告訴你 沒有宣告的兩個變數i j對吧 程式不對 所以 它不能這樣寫 還有i j就算定義了 沒值 不確定句不能確定num陣列的大小計算機很苯的 就認為它很大 那這麼辦 就是無限的大啊向記憶體申請了 很大很大的空間 然後四機了 也說明 不能這樣寫...
c語言定義全域性陣列問題,c語言陣列宣告問題
微控制器的led控制?陣列在子函式外作全域性變數是可以的,我就經常這麼定義。你的程式主函式呢?void main?問題不在子函式的陣列呼叫這。全域性陣列的定義語句一般是uchar code table 和一般的陣列定義不同,必須加code,你看是不是這個問題。詳細你可以找我私戳 在c語言中,全域性變...