2014-05-20 57 views
-3

我想知道這行代碼的意思是:什麼是在C(0.0)++意義

GL gl_abc; // GL is global struct type... 

... 

if (some condition is true) 
{ 
    gl_abc = (GL)(0.0); 
} 

是什麼(GL)(0.0)意味着C++?

+1

'GL'結構是否有任何構造函數? –

+0

它似乎是一個C類型的'double'常量0.0到'GL'對象/值/結構。或者使用單個'double'參數調用帶有奇怪加括號的'GL'對象構造函數。 – twalberg

+0

科迪格雷..不,沒有任何構造函數聲明,但它已經回答,如果我把0.0作爲構造函數,那麼它是有道理的。 – ehmath

回答

1

gl_abc = (GL)(0.0);裝置正在創建GL類型的對象,使用0.0作爲構造參數,和gl_abc正在使用分配運營商分配給新創建的對象。

什麼可能會讓您困惑的是圍繞GL的額外括號,但它是多餘的,並且gl_abc = GL(0.0);會產生類似的效果。

+0

謝謝Rakibul ..你的解釋合適.. – ehmath