- #include <iostream> 
-   
- struct A { 
- 	static const int bar = 42; 
- }; 
-   
- void foo(const int x) { // does not work with (const int&)  
- 	std::cout << x << std::endl; 
- } 
-   
- template<int val> 
- struct plusOne { 
- 	enum {value = val+1}; 
- }; 
-   
-   
- int main() { 
- 	foo(A::bar); 
- 	std::cout << plusOne<A::bar>::value << std::endl; 
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IEEgewoJc3RhdGljIGNvbnN0IGludCBiYXIgPSA0MjsKfTsKCnZvaWQgZm9vKGNvbnN0IGludCB4KSB7IC8vIGRvZXMgbm90IHdvcmsgd2l0aCAoY29uc3QgaW50JikgCglzdGQ6OmNvdXQgPDwgeCA8PCBzdGQ6OmVuZGw7Cn0KCnRlbXBsYXRlPGludCB2YWw+CnN0cnVjdCBwbHVzT25lIHsKCWVudW0ge3ZhbHVlID0gdmFsKzF9Owp9OwoKCmludCBtYWluKCkgewoJZm9vKEE6OmJhcik7CglzdGQ6OmNvdXQgPDwgcGx1c09uZTxBOjpiYXI+Ojp2YWx1ZSA8PCBzdGQ6OmVuZGw7CglyZXR1cm4gMDsKfQ==