- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
#include <iostream>
struct Test {
operator auto() -> bool { return true; }
};
int main() {
std::cout << std::boolalpha << Test() << std::endl;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+7
#include <iostream>
struct Test {
operator auto() -> bool { return true; }
};
int main() {
std::cout << std::boolalpha << Test() << std::endl;
}
operator auto() завезли!
http://ideone.com/sGxeQn
+1. Надо было сразу делать как в паскале, с возвращаемым типом справа (т.е. именно так, как сейчас сделали стрелку). А альтернативно-сишный синтаксис с возвращаемым типом слева - ёбаное говно.
Особенно хуево все стало начиная с 14 стандарта. Теперь этот auto может означать как автоматический вывод типа, так и то, что тип находится справа от функции.
*facepalm*
std::function<void(int)> a;
^
test.cpp:5:18: note: expanded from macro 'function'
#define function auto