2011-08-12 100 views
1

可能顯示的文件:
C++ weird usage of conditional operator (>?=)
C extension: <? and >? operators什麼呢<=意在C++

當我讀取的C++代碼,我看到下面的行:

void add(double v) { min <?= v; max >?= v; StatFig::add(v); } 

什麼是

>?= 

是指?

謝謝。

+0

Steve,它實際上是一個GCC擴展,而不是標準的C++,它現在也被棄用了。程序員應該使用std :: min和std :: max來代替最大值和最小值。 –

+0

這不是一個有效的運營商。你確定它編譯? –

回答

0

有一個list of operators in C++ on wikipedia,但它不在這裏,所以它可能在你讀的代碼的其他地方定義。

我的猜測是,這是一個分配運算符,檢查值是低於/高於某個閾值,如果是,則將該閾值分配給該變量。什麼

換句話說,min <?= v可能相當於min=((min<v)?min:v),但是這只是一個猜測。

1

在這裏回答:Link

正如我在任何方面不值得稱讚的偉大答案所解釋的,這是一個不推薦的GCC擴展,絕不是標準的C++。避免。