2016-12-03 75 views
-2

What is assert(false) doing in the following code?Java的斷言(假)

public float[] evaluate(float[] inputs) 
{ 
    // propagate the inputs through all neural network 
    // and return the outputs 
    assert(false); 

    float outputs[] = new float[inputs.length]; 

    for(int i = 0; i < _layers.size(); ++i) { 
     outputs = _layers.get(i).evaluate(inputs); 
     inputs = outputs; 
    } 

    return outputs; 
} 
+0

另請參閱http://stackoverflow.com/questions/28480068/assertfalse-vs-runtimeexception和http://stackoverflow.com/questions/36468020/is-assert-false-a-good-practice – Tunaki

回答

1

行,因爲它是,僅檢查asserations未啓用,否則拋出AsserationError。正如你可以添加一條消息,如

assert false: "nope!"; 

在c#中沒有等價物。它也是在java中的一個關鍵字,但不是在C#中。