#include <iostream>
using namespace std;
struct SomeType {
template< bool condition >
void init();
};
template<>
void SomeType::init< true >() {
cout << "do some init" << endl;
}
template<>
void SomeType::init< false >() {
cout << "do some other init" << endl;
}
int main() {
SomeType t;
t.init< true >();
SomeType f;
f.init< false >();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IFNvbWVUeXBlIHsKdGVtcGxhdGU8IGJvb2wgY29uZGl0aW9uID4Kdm9pZCBpbml0KCk7Cn07Cgp0ZW1wbGF0ZTw+CnZvaWQgU29tZVR5cGU6OmluaXQ8IHRydWUgPigpIHsKICAgIGNvdXQgPDwgImRvIHNvbWUgaW5pdCIgPDwgZW5kbDsKfQp0ZW1wbGF0ZTw+CnZvaWQgU29tZVR5cGU6OmluaXQ8IGZhbHNlID4oKSB7CiAgICBjb3V0IDw8ICJkbyBzb21lIG90aGVyIGluaXQiIDw8IGVuZGw7Cn0KCmludCBtYWluKCkgewoJU29tZVR5cGUgdDsKCXQuaW5pdDwgdHJ1ZSA+KCk7CglTb21lVHlwZSBmOwoJZi5pbml0PCBmYWxzZSA+KCk7CglyZXR1cm4gMDsKfQ==