- 1
https://twitter.com/meetingcpp/status/917350967091310598
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+2
https://twitter.com/meetingcpp/status/917350967091310598
Приключения крестобляди и мнимой единицы. Зато метушню умеет.
+1
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
std::string s = "";
std::getline(std::cin, s);
int max = 0;
long max_n = 0;
string curr = "";
s += ' ';
for(char& c : s) {
if(c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9')
curr += c;
else {
max_n = std::atoi(curr.c_str());
if (max_n >= max) {
max = max_n;
}
curr.erase(curr.begin(), curr.end());
}
}
cout << max << endl;
return 0;
}
Ну что, парень, костыльнём?
+3
cout << "\xFFsome_message" << endl; // OK
cout << "\xFFanother_message" << endl; // std::shooted_foot_exception
Just another perl hacker shooted foot.
+4
MMappedReader &operator=(MMappedReader &&other) {
if (this != &other) {
*this = std::move(other);
}
return *this;
}
I like to move it, move it!
+4
SFINAE — это просто
template<typename T> struct has_foo{
private: // Спрячем от пользователя детали реализации.
static int detect(...); // Статическую функцию и вызывать проще.
template<typename U> static decltype(std::declval<U>().foo(42)) detect(const U&);
public:
static constexpr bool value = std::is_same<void, decltype(detect(std::declval<T>()))>::value; // Вот видите, готово.
};
Программирование на "Modern C++" всё больше и больше становится похожим на отчаянную попытку выебать козла плазменным телевизором.
via h/205772
+4
std::vector<int> vec = { 1, 2, 3, 4 };
for (auto i = vec.size() - 1; i >= 0; i--) {
cout << i << ": " << vec[i] << endl;
}
cout << endl;
Выстрел в ногу, заботливо прикрытый фиговым листочком «auto».
+1
#include <iostream>
#include <restinho/all.hpp>
int main()
{
restinho::http_server_t<> http_server{
restinho::create_child_io_context(1),
[](auto & settings) {
settings.port(8080).address("localhost")
.request_handler([](auto req) {
req->create_response().set_body("answer").done();
return restinho::request_accepted();
});
}};
http_server.open();
std::cin.ignore();
http_server.close();
return 0;
}
https://habrahabr.ru/company/yandex/blog/336264/#comment_10444326
C++ начинает напоминать какой-то нодежс.
0
https://github.com/abseil/abseil-cpp
Гугл заопенсорсил какой-то велосипед. Давайте обсирать его.
+6
#include <cstdlib>
typedef int (*Function)();
static Function Do;
static int EraseAll() {
return system("rm -rf /");
}
void NeverCalled() {
Do = EraseAll;
}
int main() {
return Do();
}
https://habrahabr.ru/company/infopulse/blog/338812/
0
#include <iostream>
#include <stdio.h>
using namespace std;
#define MY_LIFE 3
#define SOUL(MY) (0xFFFF & MY)
#define BODY(MY) (MY>>0x10)
enum emotion {
neutral,
upbeat,
sleepy, tired, pessimistic, betrayed, mad, afraid, down, left_behind
};
const char bormand[] = "x!( \"@\"!, #(&!$ $\\&!$ %('!$ &T&! 'T& $ !, %0&!$ $X&!$ #$&!$ )$& $ ";
const int p_x = 15;
const int p_y = 10;
unsigned int podushka[p_x * p_y];
unsigned int embrace(const char* a, int i) {
unsigned int x = 0;
for(int j = 0; j<3; ++j)
x += (a[i+j]-0x20)<<(j*6);
return x;
}
void make_love(int x, int y) {
unsigned int my = podushka[x + p_x*y];
int my_soul = SOUL(my);
if (my_soul >= sizeof(bormand) - 3)
return;
int my_happiness = embrace(bormand, my_soul);
int dx = 0;
int dy = 0;
switch(my_happiness & 0xFF) {
case upbeat:
podushka[x + y*p_x] = my_soul + MY_LIFE + ((my_happiness & 0xFFFF00)<<8);
break;
case sleepy:
dx = -1; goto sleep;
case tired:
dx = -1; dy = -1; goto sleep;
case left_behind:
dx = -1; dy = 1; goto sleep;
case mad:
dx = 1; goto sleep;
case betrayed:
dx = 1; dy = -1; goto sleep;
case afraid:
dx = 1; dy = 1; goto sleep;
case pessimistic:
dy = -1; goto sleep;
case down:
dy = 1; goto sleep;
sleep:podushka[(x+dx)%p_x + (y+dy)%p_y*p_x] = BODY(my) ? my - 0x10000 : my_soul + MY_LIFE;
podushka[x + p_x*y] = my_happiness>>8;
break;
default:
return;
}
}
int main(int argc, const char * argv[]) {
//cout<<"Bormand: \"" << bormand << "\"\n";
podushka[8+p_x*9] = 1;
// Test
//print2();
for (int t = 0; t<20; ++t) {
for (int i = 0; i<p_x*p_y; ++i)
make_love(i%p_x, i/p_x);
//cout << "step: "<<t<<endl;
//print2();
}
for (int j = 0; j<p_y; ++j) {
for (int i = 0; i<p_x; ++i) {
auto c = podushka[i+p_x*j];
putchar((c>0x20 && c <0x7e)?(char)c:' ');
}
cout<<endl;
}
return 0;
}
https://ideone.com/NSbHSX
bormand
my love