我需要知道下面的源代碼是指什麼:意義的代碼示例
scalar sumLocalContErr = runTime.deltaTValue()*
mag(contErr)().weightedAverage(mesh.V()).value();
是什麼在這方面的*mag(contErr)()
是什麼意思?我試圖谷歌它,但無法找到解釋。
問候 streight
我需要知道下面的源代碼是指什麼:意義的代碼示例
scalar sumLocalContErr = runTime.deltaTValue()*
mag(contErr)().weightedAverage(mesh.V()).value();
是什麼在這方面的*mag(contErr)()
是什麼意思?我試圖谷歌它,但無法找到解釋。
問候 streight
runTime.deltaTValue() * mag(contErr)().weightedAverage(mesh.V()).value();
~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 2
Expr的1:是顯而易見的。 runTime.deltaTValue()
調用一個方法並返回一個對象。返回的對象具有一個重載*
操作者從表達式2
Expr的2接受對象:看來mag
是與接受contErr
一個構造函數的類。然後mag(contErr)
是一個對象。該對象有一個超載的()
運算符。所以,mag(contErr)()
是一種調用方法。通過調用它,它將返回另一個對象,該對象的方法爲weightedAverage
,該方法接受mesh.V()
並返回一個具有方法value
的對象。
乘以兩個函數的返回值,也許? *之後的代碼應該在同一行上。那麼,該代碼將只會乘以它們的返回。 –
看起來像一個乘法。但是我們不能確定不知道所有的類型!但你真的應該**使用調試器**! –
除非標量是一些新的基本類型,否則由於運算符重載可能意味着任何事情。 –