- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
class ClassA
{
};
class ClassB : private ClassA
{
public:
ClassA& AsClassA()
{
return *this;
}
};
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+22
class ClassA
{
};
class ClassB : private ClassA
{
public:
ClassA& AsClassA()
{
return *this;
}
};
+175
with Ada.Integer_Text_Io, Ada.Text_Io;
use Ada.Integer_Text_Io, Ada.Text_Io;
procedure Test is
v : Long_Float := 26.0;
v1 : float := 26.0;
begin
while (v<27.0) loop
Put_Line("Value = " & Long_Float'image(v));
v:=v+0.2;
end loop;
while (v1<27.0) loop
Put_Line("Value = " & float'image(v1));
v1:=v1+0.2;
end loop;
end;
ideone.com/pXIhvY
Безопасный военный язык, да.
+154
function isEmptyStr(val) {
return val == null || val === "";
}
−124
> cat 1.pl
$owner = "Jack";
print "This is $owner\n";
print "This is $owner's house\n";
> perl 1.pl
This is Jack
This is house
The old package delimiter was a single quote, but double colon is now the preferred delimiter, in part because it's more readable to humans, and in part because it's more readable to emacs macros. It also makes C++ programmers feel like they know what's going on--as opposed to using the single quote as separator, which was there to make Ada programmers feel like they knew what was going on. Because the old-fashioned syntax is still supported for backwards compatibility, if you try to use a string like "This is $owner's house" , you'll be accessing $owner::s ; that is, the $s variable in package owner , which is probably not what you meant. Use braces to disambiguate, as in "This is ${owner}'s house" .
+163
if ($linksCount == 0) $linksCount = -1; // for no error
$percent = round(($linksOkIndex/$linksCount)*100, 0);
if ($linksCount == -1) $linksCount = 0; // for no error
Я так избегаю деления на ноль -)
+1002
BOOLEAN ConvertSizeToStr(__int64 size,TCHAR *buf,DWORD buf_size_c)
{
double dsize;
HRESULT hr;
dsize=(double)size;
if (size/1500000000000L>0)
{
dsize/=1099511627776L;
hr=StringCchPrintf(buf,buf_size_c,_T("%.2lf Тб"),dsize);
}
else if (size/1500000000L>0)
{
dsize/=1073741824L;
hr=StringCchPrintf(buf,buf_size_c,_T("%.2lf Гб"),dsize);
}
else if (size/1500000L>0)
{
dsize/=1048576L;
hr=StringCchPrintf(buf,buf_size_c,_T("%.2lf Мб"),dsize);
}
else if (size/1500>0)
{
dsize/=1024;
hr=StringCchPrintf(buf,buf_size_c,_T("%.2lf Кб"),dsize);
}
else
hr=StringCchPrintf(buf,buf_size_c,_T("%I64d байт"),size);
if (SUCCEEDED(hr))
return true;
else
return false;
}
Конвертировать байты в КБ/МБ/ГБ
+78
// inside some method
final DateFormat dateFormat = i18n.getDateFormat();
synchronized (dateFormat) {
formatedViolationDate = (violationDate != null) ?
dateFormat.format(violationDate) : "";
}
i18n.getDateFormat() возвращает статический объект DateFormat, который может использоваться несколькими потоками. В руки бы накласть тому, кто это писал.
Решение: getDateFormat() возвращает строку формата, объект формата создаем при каждом вызове.
+162
function validemail($email){
if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email))
return false;
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i]))
return false;
}
+170
if(SCREEN_WIDTH==800)
{
fm1 = 62;
fm2 = 61;
top = 86;
}
if(SCREEN_WIDTH==1024){
fm1 = 27;
fm2 = 26;
top = 78;
}
if(SCREEN_WIDTH==1680||SCREEN_WIDTH==1920){
fm1 = 72;
fm2 = 73;
top = 81;
}
if(SCREEN_WIDTH==1280 || SCREEN_WIDTH == 2560){
fm1 = 76;
fm2 = 75;
top = 77;
}
if(SCREEN_WIDTH == 1366 || SCREEN_WIDTH == 1440){
fm1= 67;
fm2= 66;
top = 79;
}
Это капля в море гавнокода одного из проектов на который меня посадили.
Чуть менее 1000 багов открыто только по GUI.
Все это дело рук одной девушки))
+188
typedef enum
{
FFALSE = 0,
TTRUE,
MMAYBE
} Truth_t;
ну почти квантовое программирование.
ЗЫ да, это из С++ программы.