2016-07-14 112 views
1

我正在學習iOS開發,並遇到了一個解密過程中遇到的snipet代碼。瞭解C++結構語法

struct PinchScaleState 
{ 
    PinchScaleState() 
    : currentScale (1.f) 
    , initialPinchScale (1.f) 
    {} 

    float currentScale; 
    float initialPinchScale; 
}; 

我得到的是,上面的代碼定義一個C結構,其具有的屬性

float currentScale; 
float initialPinchScale; 

但我不確定下面是做

PinchScaleState() 
: currentScale (1.f) 
, initialPinchScale (1.f) 
{} 

什麼,我猜測它是設置初始值,但我不確定。

謝謝!

+0

對我來說看起來像一個C++構造函數。在C++中,'struct'和'class'之間的區別有點渾濁。 – user3386109

+0

您要搜索的術語是「初始化程序列表」。 (你的猜測是好的。) – molbdnilo

+3

@ user3386109它不是以任何方式「泥濘」。兩者都聲明一個類,但默認情況下'struct'的內容和基類是'public'。 – Quentin

回答

1

這是一個C++構造函數。在:之後是一個構造函數初始化列表,它將currentScaleinitialPinchScale的值設置爲像您猜測的那樣。

+0

完美謝謝!我發現下面的文章有用http://www.informit.com/articles/article.aspx?p=1852519 –