Can you summarize the following document?
        
  codice_1的一般形式為  其中表示式1為布林表示式,或真或為假。若表示式1為真,則返回表示式2的值作為整個條件表示式的值。若條件為假,則返回表示式3的值。例如 的執行結果就是將a和b中最大值賦給max.

  GNU允許C語言省略條件表示式中的表示式2省略,此時表示表示式2與表示式1相同。例如: 等價於 但是如果x是一個表示式,僅求值一次。C#提供了類似的特性 與"x?:y"的用法不同,??只判斷x是否為null,而不是判斷真假。

  在C++中,由於C++明確區分初始化和賦值,有時使用"if-else"的條件賦值語句並不可行。在這種情形下總是可能使用函式呼叫,但是這樣做會顯得很笨重而且不簡潔。例如,如果你想要根據條件傳遞不同的值作為建構函式的引數,單純使用"if-else"語句根本不可能;在這種情況下,可以使用條件賦值表示式,或函式呼叫。注意有些型別允許初始化,但不允許賦值,或者賦值運算與建構函式不全相同。對於引用型別後者為真,例如: 在這種情況下,用if-else語句替換條件運算子(? :)變得不可能。(雖然可以用包含"if-else"語句的函式呼叫替換? :)。  進一步,三目運算子能夠作為一個可以被賦值的左值。例如  在此例中,如果第5行的布林變數cond為真,值1會賦給變數a,否則賦值給b.

  Python程式設計語言使用一種不同的語法處理條件表示式:  這一特性在Python 2.5以前的版本並不可用。

  Common Lisp的每個表示式都有返回值:
在許多程式設計語言中,條件運算子(conditional operator, codice_1)是一個基本的條件語句。條件運算子最初起源於BCPL程式設計語言。