- 1
- 2
- 3
- 4
- 5
- 6
- 7
#include <vector>
template <typename T>
void FreeAll( T & t ) {
T tmp;
t.swap( tmp );
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+3
#include <vector>
template <typename T>
void FreeAll( T & t ) {
T tmp;
t.swap( tmp );
}
+161
function kevinTheNumberMentioner(_){
l=[]
/* mostly harmless --> */ with(l) {
//Sorry about all this, my babel fish has a headache today...
for (ll=!+[]+!![];ll<_+(+!![]);ll++) {
lll=+!![];
while (ll%++lll);
//I've got this terrible pain in all the semicolons down my right-hand side
(ll==lll)&&push(ll);
}
forEach(alert);
}
//You're really not going to like this...
return [!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]];
}
Открыл твитор, а там - это.
http://arstechnica.com/information-technology/2014/11/holiday-reading-for-a-certain-sort-if-hemingway-wrote-javascript/
+154
var setLeadingZero = function(val) {
if (val.toString().length == 1)
return '0' + val;
else
return val;
}
"Но работает же"
+12
#include <iostream>
#include <functional>
using namespace std;
struct T
{
int a;
T(const T&):a(1){cout<<"copy_construct T"<<endl;}
T():a(1){cout<<"construct T"<<endl;}
~T(){a=0;cout<<"destruct T"<<endl;}
const T& operator=(const T&){cout<<"copy_ass T"<<endl;return *this;}
};
struct M: public T{};
void f(const T& fa)
{
cout<<"fa.a= "<<fa.a<<endl;
}
int main() {
f(std::cref(T()));
cout<<endl;
const T& b = T();
cout<<"b.a= "<<b.a<<endl;
cout<<endl;
const T& a = std::cref(T());
cout<<"a.a= "<<a.a<<endl;
return 0;
}
http://ideone.com/BmHo9w
Есть на этом ресурсе великий знаватель крестов и вот он меня уверял, что объект, на который ссылается ссылка - должен дожить до конца выхода ссылки из скоупа. Почему мы этого не наблюдаем? А знаватель? Ты меня прямо даже убедил, и тут такая подстава от тебя. a - не дожил до конца.
+15
for(int y=0; y<height; ++y)
{
for(int x=0; x<width; ++x)
b[y,x] = a[y,x];
}
+39
extern const TSafeFloat Pi;//Не использовать до входа в main!!! Возможно она ещё не инициализированна!!!
//#define PI 3.14159265358979323846
#ifndef M_PI
#define M_PI 3.14159265358979323846
#endif
Форматирование сохранено. Файл PiConsts.h
+142
main()
{
j=atol("776677"); c=0;
gb=65500; /*гран буф не>65500!*/
gp=gb+65500;
c=PA();
vm = v_mod(0x0f00)&0x00ff;
if((vm!=2) && (vm!=3) && (vm!=7)) v_mod(3);
if(vm==7) v_m=MK_FP(0xB000,0); /* присвоить адр в-памяти */
else v_m=MK_FP(0xB800,0);
if(c==0) {printf("Самопроверка программы неудачна."); dely(9);}
gek=calloc(1000,sizeof(int));
bufa=farcalloc(4000,sizeof(long));
bfk=calloc(4000,sizeof(int));
ok=calloc(800,sizeof(char));
st=calloc(10,sizeof(char));
bufv=calloc(4000,sizeof(char));
if((gek==NULL)||(bufa==NULL)||(bfk==NULL)||(ok==NULL)||(st==NULL)||(bufv==NULL))
{
printf(" Неудачное выделение памяти для основных буферов.\n");
printf(" Программа не выполняется.");
dely(9); exit(1); }
for(x=0;x<4000;x++) {bufa[x]=0L;bfk[x]=0; /*занул буф адресов и кодов */
if(x<10) st[x]=0x00; /*буф для выв чисел на экр*/
if(x<26) urov[x]=1;
if(x<20) {abn[x]=1; aba[x]=2L;}} /*мин адресa абс ном строк и нач загр буф*/
if(x<128) B0[x]=0;
ur=vv=avt=in=0; i=N=0; zap=0;x_=1;
ifm=10;/*10,01,11,12,21 - 1:п/панель записей,0-инф п/панель,12,21-2 базы*/
/* vctp(3);*/
mou(0); kur(0);
okn=0; /*сбр инд сохр-х окон*/
v_mod(0);
nok1=16;
SET(); ch=pal[0];
textbackground(BLACK);
clrscr();
okno(0,2,ch,ch);
window(1,1,80,25);
okno(16,2,ch,ch);
nstr(1);
baz=1;
nfl="0.cry ";
F_place("10.cry");
kzo();
prx=3; /*нейтраль*/
for(vm=4000;vm<8000;vm++) v_m[vm]=0; vm=0;
/*vm-далее кол-во стр загр буф*/
ppan(0,0);
form_kod(2);/*чт genko*/
attr=pal[5]; vdl(a+1,y_,a+36,y_,0,0); /*сох атр бывш стр*/
vctp(0);
tit();
if(zap!=0) nstr(2);
ZA[0]='\0';
za=strlen(MPR);
strcat(ZA,MPR);if(za>3) strcat(ZA,"\\"); strcat(ZA,"save.com");
za=0; if((access(ZA,0)!=-1)) za=1; /*ZA-путь savera*/
/**************/
for(;;)
{
mou(1);
ch=get_char(1);
if((ch<48)||(ch>57)) /*кроме цифр*/
if((ch!=0xfe)&&(ch>0x20)&&(f_kl==0)) {printf("\7"); ch=0;}
mou(2); mus(a); /*ориен мыши*/
if((ch==TAB)||(ch==RIGHT)||(ch==LEFT))
tab();/*порядок не менять*/
if(ch==15) { ctrl(); tab();}
mus(a); mus(101);
if(ch==F7) gl_poisk(0);
if(ch==AF7) gl_poisk(1);
if(ch==F1) hlp();
if(ch==CTRL) ctrl();
if((ch==AF1)&&(Pp==1)) ctrl();
if((ch==AF2)&&(Pp==0)) ctrl();
if(ch==32) exr(0);
if(ch==AF3) exb();
if(ch==AF4) exr(1);
if(ch==UP) { cm=0; up(1);}
if(ch==DOWN) { cm=0; down(1); }
if(ch==PGUP) { cm=0;scroll(0,0);}
if(ch==PGDN) { cm=0;scroll(1,0);}
if(ch==HOME) { cm=0;scroll(0,4000);}
if(ch==END) { cm=0;scroll(1,4000);}
if(ch==F5) kon(1);
if(zap==0) /*ес зп разреш*/
{
if(ch==INS) { s=0;
if((chkm(3)!=0)||(chkm(4)!=0)) {s=1;
coo(0,0x4E,0xCF,"","Предельная длина файла!",
"Разрешено только удаление!",""," Выход");}
if((chkm(1)!=0)||(chkm(2)!=0)) {s=1;
coo(0,0x4E,0xCF,"","Исчерпана длина буфера!",
"Сохраните набранную информацию,","после чего можно продолжить.",
" Выход");}
if(vm==4000)
{coo(0,0x7f,0x70,"Количество записей в списке достигло 4000.",
"","В данном случае возможно только удаление",
Это один знакомый слесарь ЭВМ писал прогу для создания/редактирования/просмотра самопальной древовидной БД, для своих нужд, с тем условием, что работать она должна была чуть ли не на i286, и грузилась не более 2х секунд. Недавно он обратился ко мне с просьбой перенести её под линь, но увидев это я решил что такое жить не должно, поэтому просто писал аналог с нуля, на плюсах, но справедливости ради, замечу что моя прога вышла чуть тормознее:).
Полный код к сожалению не влез, вот он: http://ideone.com/3sLsa.
P.S. Авторское форматирование сохранено.
+18
// ОЛОЛО ОЛОЛО КРЕСТОШАБЛОНЫ И ХУЙЛО
if (ro<Fixed(100))
DrawCircle<0>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(200))
DrawCircle<1>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(400))
DrawCircle<2>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(800))
DrawCircle<3>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(1600))
DrawCircle<4>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(3200))
DrawCircle<5>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(6400))
DrawCircle<6>(b, x, y, ri, ro, ball.color);
else if (ro<Fixed(12800))
DrawCircle<7>(b, x, y, ri, ro, ball.color);
else
DrawCircle<8>(b, x, y, ro, ri, ball.color);
Я знаю, что рекурсивный крестошаблон сможет сделать то же самое, но крестопортянка всё равно быстрее пишется и выглядит нагляднее.
+148
#include <iostream>
#include <Windows.h>
int main()
{
unsigned char data[]={0xb8, 0x9a, 0x02, 0x00, 0x00, 0xc3};
auto function=(int(*)())VirtualAlloc(nullptr, sizeof(data), MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memcpy(function, data, sizeof(data));
std::cout << function();
VirtualFree(function, 0, MEM_RELEASE);
return 0;
}
Угадайте, что выведет эта программа?
−85
require "android"
local inp = android.getInput("Factorial", "Enter number:")
local cur = 0
local sum = 1
repeat
cur = cur + 1
sum = sum * cur
until cur == (inp.result * 1)
android.makeToast("Factorial of " .. inp.result .. " is " .. sum)
Lua. Маленький скриптик "факториал", накиданный на моём Desire Z в SL4A.
Как-то явно не так надо строковые типы к целочисленным приводить...