簡體   English   中英

這段C ++代碼中發生了什么? (具有繼承權的解析運算符?!?)

[英]What is going on in this piece of c++ code? (Resolution operator with inheritance ?!?)

我不知道這段代碼中發生了什么。 這是我必須理解的一段工作代碼。

orange::orange():
  hello_short(false),
  hello_long(false),
  foo(NULL),
  foo2(NULL),
  quiet(false)
{
  res  = NULL;
  good = true;
}
orange::orange():

簡而言之,您正在定義橙色類的函數(左側),該函數稱為“橙色”(右側)且不帶參數。 由於函數的名稱與類相同,並且不返回任何值,因此它是類的構造函數

其余的是初始化列表: http : //www.cprogramming.com/tutorial/initialization-lists-c++.html

它使用給定的值初始化類成員( hello_short將為falsehello_long將為falsefoo將為NULL等),將res設置為NULL並將good設置為true

初始化列表始終執行構造函數之前完成(即花括號內的代碼)。

另外,還有一個語法錯誤:在foo2(NULL) ,應該出現一個逗號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM