[ create a new paste ] login | about

Link: http://codepad.org/bjqxy9HC    [ raw code | output | fork ]

DigitalGhost - C++, pasted on Jul 2:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>

#define implies ->* implies_impl ? true :

struct implies_impl_t {
} const implies_impl = {};

template<typename T>
bool operator->*(T const & t, implies_impl_t) {
    return !static_cast<bool>(t);
}

int main() {
    using std::cout;
    cout << (1 implies 1) << '\n';
    cout << (1 implies 0) << '\n';
    cout << (0 implies 1) << '\n';
    cout << (0 implies 0) << '\n';
}


Output:
1
2
3
4
1
0
1
1


Create a new paste based on this one


Comments: