名稱空間
變體
操作

std::logical_or

來自 cppreference.com
 
 
 
函式物件
函式呼叫
(C++17)(C++23)
恆等函式物件
(C++20)
透明運算子包裝器
(C++14)
(C++14)
(C++14)
(C++14)  
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)

舊繫結器和介面卡
(直到 C++17*)
(直到 C++17*)
(直到 C++17*)
(直到 C++17*)  
(直到 C++17*)
(until C++17*)(until C++17*)(until C++17*)(until C++17*)
(直到 C++20*)
(直到 C++20*)
(直到 C++17*)(直到 C++17*)
(直到 C++17*)(直到 C++17*)

(直到 C++17*)
(until C++17*)(until C++17*)(until C++17*)(until C++17*)
(直到 C++20*)
(直到 C++20*)
 
定義於標頭檔案 <functional>
template< class T >
struct logical_or;
(until C++14)
template< class T = void >
struct logical_or;
(C++14 起)

用於執行邏輯或 (logical disjunction) 的函式物件。實際上呼叫型別 T 上的 operator||

目錄

[edit] 特化

當未指定 T 時,標準庫提供了 std::logical_or 的特化,它讓引數型別和返回型別被推導。

實現 x || y 的函式物件,推導引數和返回型別
(類模板特化) [edit]
(C++14 起)

[edit] 成員型別

型別 定義
result_type (C++17 中已棄用)(C++20 中已移除) bool
first_argument_type (C++17 中已棄用)(C++20 中已移除) T
second_argument_type (C++17 中已棄用)(C++20 中已移除) T

這些成員型別是透過公開繼承 std::binary_function<T, T, bool> 獲得的。

(C++11 前)

[edit] 成員函式

operator()
返回兩個引數的邏輯或
(公開成員函式)

std::logical_or::operator()

bool operator()( const T& lhs, const T& rhs ) const;
(C++14 起為 constexpr)

返回 lhsrhs 的邏輯或。

引數

lhs, rhs - 要計算邏輯或的值

返回值

lhs || rhs 的結果。

[編輯] 異常

可能丟擲實現定義的異常。

可能的實現

constexpr bool operator()(const T& lhs, const T& rhs) const 
{
    return lhs || rhs;
}