1樓:匿名使用者
樓主你好,復
首先就是 c++ 中的空語句。
制一條bai語句du中只包含分號(;),那這條zhi語句就是dao空語句。呵呵,c++ 中即使是空語句也要以分號結束的。同時也說明,程式中使用多個分號連在一起也是可以的,雖然沒什麼用,但是寫程式時多加個分號也不會錯。
典型應用是:
for(;;)
//這種用法就是無限迴圈。
而用大括號 {} 括起來的部分就是語句塊,語句塊相當於一條邏輯語句,在它裡面定義的變數出來後都會無效的。{} 後面也不用什麼分號表結束,因為裡面的語句都已經有分號結束了,花括號相當於一個邏輯塊,即邏輯塊的限定符。
大括號的應用,條件體,迴圈體,函式體,區域性區塊,都是用它括起來的。那為什麼自定義型別時大括號後面還要多加一個分號才算正確呢?這是因為它怕你在後面接著寫某些識別符號,如果不加分號的話,它會認為你是不是要把那些識別符號定義為該型別?
加上分號後,編譯器就知道後面的語句和本句無關了,可以按照新的規則處理。
希望對你有所幫助!
2樓:哀傷の霜之哀傷
;表示語句結尾,class{}是類的定義,不是語句。
謝謝採納!
補充:如果是classa;
就相當於定義了類的物件,就需要;了 相當與執行了定義類物件的語句。
3樓:匿名使用者
; 是作為c++語句結束的標誌
另外幾種需要使用 ; 的情況
函式的宣告,如
int fun(int ) ; //函式體的定義在別的地方實版現但如果函權數是直接定義的,就不需要加分號了int fun(int i)
//這裡 函式是完整結束的,不需要 ;
另外,struct 和 class 的定義,必須以 ; 結束,如果最後沒有分號,編譯通不過的
4樓:匿名使用者
分號要用的3種情況:1.一般執行語句2.作為空語句3宣告
至於樓主後面說的,應該是作為一個表示形式.在程式中,作為宣告後面應加上分號.
c++中符號"->"和"."的用法
5樓:匿名使用者
"."和"->"都是二元操作符,格式為:變數(.或->)成員。(成員可以是變數,也可以是函式)。
各自含**釋如下:
1 "." 該操作符認為左邊的變數是一個結構或者類物件。
.將取該變數的成員值(操作符右邊的成員)。
2 "->" 該操作符認為左邊的變數是一個指標。
->將取該指標指向的變數的成員值(操作符右邊的成員)。
所以反推過來,總結這兩個操作符是用來訪問類物件或結構的成員的操作符。
1 如果是結構或類物件的變數,使用操作符"."訪問成員。
2 如果是結構或類物件的指標,使用操作符"->"訪問成員。
6樓:匿名使用者
簡單地說,「.」前是一個類的物件例項,「->」前面是型別指標如c******* abc; //定義一個例項物件abc.setbuttoninfo(); //呼叫成員函式用「.
」c******* *abcd; //定義型別指標abcd->setbuttoninfo(); //呼叫函式用「->」
c++中的::符號的作用
7樓:祜風
1、::是c++裡的「作用域運算子」。作用域符號::的前面一般是類名稱,後面一般是該類的成員名稱。
2、其作用主要有三點:
(1)標識作用域的級別;
:: 用在全域性函式或變數前,表示是全域性函式或變數(2)標識成員屬於哪個類
a,b表示兩個類,在a,b中都有成員member。那麼a::member就表示類a中的成員member
b::member就表示類b中的成員member(3) 限定成員的作用範圍
應用於名稱空間namespace定義的實體後面。
8樓:匿名使用者
::域作用符,第一個::表示listen用的全域性函,這麼用是因為在類裡或某個名稱空間裡可能存在著和這個全域性函式相同名的函式,如果不用::
,編譯器會預設呼叫類裡或某個名稱空間裡的函式,加上它則表示呼叫的是那個全域性的listen。
9樓:匿名使用者
在類裡面 這個事解構函式 如果不加 系統會預設設定一個解構函式 系統預設設定的解構函式為空值
解構函式的呼叫時這樣的:
越早宣告越晚呼叫 例如這個題目: 它在建立類b的物件b時, 呼叫類b的建構函式 ,而該建構函式 自動先呼叫 基類的建構函式 。當完成 建立物件後 ,主函式 結束, 開始 析構 主函式 ,然後 析構 派生類b ,然後 再析構 基類 a。
然後此程式讀完。
函式呼叫的過程是: a() b() ~b() ~a()全部過程如上 則輸出結果是 1342
10樓:
作用域限定符或者稱作用域運算子
11樓:
標識該函式是在全域性名稱空間
12樓:匿名使用者
這個是作用域識別符號,作用既是來訪問所在作用域裡的變數,函式等內容。這裡是表示呼叫api函式,呼叫api函式的方式既是這樣。
請問c++中的引用符號「&」到底怎麼使用?
13樓:苑
c++中的引用符號「&」的使用方法是,型別識別符號 &引用名=目標變數名。
c++是c語言的繼承,它可進行過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的物件導向的程式設計。引用(reference)就是c++對c語言的重要擴充。引用就是某一變數(目標)的一個別名,對引用的操作與對變數直接操作完全一樣。
14樓:西西哩的小馬甲
引用就是某一變數(目標)的一個別名,對引用的操作與對變數直接操作完全一樣。
引用的宣告方法:型別識別符號 &引用名=目標變數名;
【例1】:int a; int &ra=a; //定義引用ra,它是變數a的引用,即別名 ;
說明:(1)&在此不是求地址運算,而是起標識作用。
(2)型別識別符號是指目標變數的型別。
(3)宣告引用時,必須同時對其進行初始化。
(4)引用宣告完畢後,相當於目標變數名有兩個名稱,即該目標原名稱和引用名,且不能再把該引用名作為其他變數名的別名。 ra=1; 等價於 a=1;
(5)宣告一個引用,不是新定義了一個變數,它只表示該引用名是目標變數名的一個別名,它本身不是一種資料型別,因此引用本身不佔儲存單元,系統也不給引用分配儲存單元。
故:對引用求地址,就是對目標變數求地址。&ra與&a相等。
(6)不能建立陣列的引用。因為陣列是一個由若干個元素所組成的集合,所以無法建立一個陣列的別名。
15樓:匿名使用者
引用是c++引入的新語言特性,是c++常用的一個重要內容之一,正確、靈活地使用引用,可以使程式簡潔、高效。
引用簡介
引用就是某一變數(目標)的一個別名,對引用的操作與對變數直接操作完全一樣。
引用的宣告方法:型別識別符號 &引用名=目標變數名;
【例1】:int a; int &ra=a; //定義引用ra,它是變數a的引用,即別名
說明:(1)&在此不是求地址運算,而是起標識作用。
(2)型別識別符號是指目標變數的型別。
(3)宣告引用時,必須同時對其進行初始化。
(4)引用宣告完畢後,相當於目標變數名有兩個名稱,即該目標原名稱和引用名,且不能再把該引用名作為其他變數名的別名。
ra=1; 等價於 a=1;
(5)宣告一個引用,不是新定義了一個變數,它只表示該引用名是目標變數名的一個別名,它本身不是一種資料型別,因此引用本身不佔儲存單元,系統也不給引用分配儲存單元。故:對引用求地址,就是對目標變數求地址。
&ra與&a相等。
(6)不能建立陣列的引用。因為陣列是一個由若干個元素所組成的集合,所以無法建立一個陣列的別名。
引用應用
1、引用作為引數
引用的一個重要作用就是作為函式的引數。以前的c語言中函式引數傳遞是值傳遞,如果有大塊資料作為引數傳遞的時候,採用的方案往往是指標,因為這樣可以避免將整塊資料全部壓棧,可以提高程式的效率。但是現在(c++中)又增加了一種同樣有效率的選擇(在某些特殊情況下又是必須的選擇),就是引用。
【例2】:
此處函式的形參p1, p2都是引用
為在程式中呼叫該函式,則相應的主調函式的呼叫點處,直接以變數作為實參進行呼叫即可,而不需要實參變數有任何的特殊要求。如:對應上面定義的swap函式,相應的主調函式可寫為:
main( )
float &fn2(float r) //定義函式fn2,它以引用方式返回函式值
void main() //主函式
} (5)在另外的一些操作符中,卻千萬不能返回引用:+-*/ 四則運算子。它們不能返回引用,effective c++[1]的item23詳細的討論了這個問題。
主要原因是這四個操作符沒有side effect,因此,它們必須構造一個物件作為返回值,可選的方案包括:返回一個物件、返回一個區域性變數的引用,返回一個new分配的物件的引用、返回一個靜態物件引用。根據前面提到的引用作為返回值的三個規則,第2、3兩個方案都被否決了。
靜態物件的引用又因為((a+b) == (c+d))會永遠為true而導致錯誤。所以可選的只剩下返回一個物件了。
4、引用和多型
引用是除指標外另一個可以產生多型效果的手段。這意味著,一個基類的引用可以指向它的派生類例項。
【例7】:
class a;
class b:public a;
b b;
a &ref = b; // 用派生類物件初始化基類物件的引用
ref 只能用來訪問派生類物件中從基類繼承下來的成員,是基類引用指向派生類。如果a類中定義有虛擬函式,並且在b類中重寫了這個虛擬函式,就可以通過ref產生多型效果。
引用總結
(1)在引用的使用中,單純給某個變數取個別名是毫無意義的,引用的目的主要用於在函式引數傳遞中,解決大塊資料或物件的傳遞效率和空間不如意的問題。
(2)用引用傳遞函式的引數,能保證引數傳遞中不產生副本,提高傳遞的效率,且通過const的使用,保證了引用傳遞的安全性。
(3)引用與指標的區別是,指標通過某個指標變數指向一個物件後,對它所指向的變數間接操作。程式中使用指標,程式的可讀性差;而引用本身就是目標變數的別名,對引用的操作就是對目標變數的操作。
(4)使用引用的時機。流操作符《和》、賦值操作符=的返回值、拷貝建構函式的引數、賦值操作符=的引數、其它情況都推薦使用引用。
C語言中什麼時候需要用到符號,c語言程式設計中什麼時候用 什麼時候用 ?
是取地址符號!當從鍵盤輸入一個資料到記憶體單元時,先找到記憶體單元的地址,再將資料放到記憶體單元中 例如 int a 定義一個整型變數a,給它分配一個記憶體空間scanf d a 從鍵盤輸入資料,找到a的地址放進去。取地址符號 在指標中用到比較多 例如 int p a 定義一個指標變數p,p指向a ...
c中double應該怎麼用,c中的double是什麼,有什麼作用,煩舉一例。
bai double在這裡是指將變數 dui和變數s定義zhi為雙精度實型變數。dao也就是說 賦給這回兩個變數的值將答以雙精度實型格式儲存在記憶體中 類似的 int 整型 long 長整型 float 單精度實型 double是浮點類,可以用來宣告浮點類變數 double name 也可以加上限定...
c中符號是什麼意思,C中符號什麼意思,舉一個例子
在c c 語言中沒有的吧。在js中是有的,含義是 嚴格相等。比如var a 3 var b 3 a b 返回 true a b 返回 false 因為a,b的型別不一樣。是一個邏輯運算子,它的目的是判斷 兩邊的表示式是否相等。如果相等,返回值為1,如果不等,返回值為0。兩邊表示式一般要是可以相互轉化...