-
Догадайтесь что она делает ...
Date: 12/14/07
Keywords: no keywords
Код из нашего проекта
Догадайтесь что она делает ...
Это не смешно уже у нас сидит серийный маньяк который каждый день такое мочит...
///
/// Возвращает признак принадлежности кода к третьему уровню классификации
///
/// код объекта
/// true, если объект принадлежит к третьему уровню классификации, иначе - false
private bool HasCodeThirdLevel(string code)
{
if(code == null && code.Length < 9) return false;
ArrayList sixthCharacters = new ArrayList();
sixthCharacters.AddRange(new char[]{'1', '2', '3', '4', '5', '6', '7', '8', '9'});
return sixthCharacters.Contains(code[5]);
}
Source: http://community.livejournal.com/code_wtf/118640.html
-
Такого вы еще не видели
Date: 12/14/07
Keywords: no keywords
C++, Win32:
HRESULT hr = SomeFunction();
if FAILED(hr)
{
// do something
}
Именно так, без скобок "if FAILED(hr)". Каково?
Source: http://community.livejournal.com/code_wtf/118318.html
-
CWnd::CenterWindow()
Date: 12/13/07
Keywords: no keywords
Прототип функции:
void CenterWindow(CWnd* pAlternateOwner = NULL);
Реализация:
void CWnd::CenterWindow(CWnd* pAlternateOwner)
{
ASSERT(::IsWindow(m_hWnd));
// determine owner window to center against
DWORD dwStyle = GetStyle();
HWND hWndCenter = pAlternateOwner->GetSafeHwnd();
if (pAlternateOwner == NULL)
{
// ...
}
// ...
}
Один и тот же код и в MFC 7.1, и в 8.0
Source: http://community.livejournal.com/code_wtf/118126.html
-
Не WTF, просто забавно.
Date: 12/13/07
Keywords: no keywords
enum eValType { UNDEF, INT_VAL, REAL_VAL, STRING_VAL, ARRAY_VAL, HASH_VAL, POINTER_VAL};
Функция приведения enum к human-readable виду:
...
switch(eType)
{
case UNDEF: return "*UNDEF*";
case INT_VAL: return "INTEGER";
case REAL_VAL: return "REAL";
case STRING_VAL: return "STRING";
case ARRAY_VAL: return "ARRAY";
case HASH_VAL: return "HASH";
case POINTER_VAL: return "POINTER";
default: return "OMG_WTF?!";
}
Source: http://community.livejournal.com/code_wtf/117991.html
-
Вы не знаете, где это лечат?
Date: 12/12/07
Keywords: no keywords
Альтернатива индусской проверке на длину стрчного представления.
final boolean recstuffArrows = Boolean.TRUE.equals(stuffCache.getReceiverStuff(clientHzMeetingVO.getPk()).getRecstuffArrows());
А это - "утрясаловка"
while (true) {
if (refreshStuff(clientType, toDoList)) {
continue;
}
if (refreshRequester(clientType, toDoList)) {
continue;
}
if (refreshPriority(clientType, toDoList)) {
continue;
}
if (refreshLocation(toDoList)) {
continue;
}
if (refreshUseHomeAddress()) {
continue;
}
if (refreshBlahBlahStartDate(clientType,toDoList)) {
continue;
}
if (refreshBlahBlahStartTime(clientType,toDoList)) {
continue;
}
if (refreshRound(clientType, toDoList)) {
continue;
}
if (refreshProcessingBlahBlah(clientType, toDoList)) {
continue;
}
if (refreshRoundType(clientType, toDoList)) {
continue;
}
if (refreshBlahBlahPrintCriteria(clientType)) {
continue;
}
if (refreshTakenAtBlahBlahStay()) {
continue;
}
if (refreshReplyToBlahBlahStay(clientType)) {
continue;
}
break;
}
Некоторые названия методов заменены во избежание претензий :)
Source: http://community.livejournal.com/code_wtf/117517.html
-
А как это сделать на Objective-C?
Date: 12/09/07
Keywords: no keywords
Некий программист обнаружил, что некоторые выразительные средства, к которым он привязался в C++, недоступны в C. Однако он не растерялся и нашел адекватную альтернативу:
if(bAlsoNeg != 0){ //C synthax for (bAlsoNeg==true)
Source: http://community.livejournal.com/code_wtf/117408.html
-
бывший программист пишет код
Date: 12/03/07
Keywords: no keywords
# ---------------------------------------------
public function getTestCases(out cases[], in data){
auto functionName = "getTestCases()";
auto i, j, k, x, y;
auto rc, rn, rv, as, val1, val2;
auto testModules, modules[], module[];
DeleteArray (cases);
rc = getSingleValueFromData(data, "testmodule", testModules);
rn = split(testModules, modules, ",");
for (i=1; i<=rn; i++){
rv = split(modules[i],module,"~");
for (j=2; j<=rv; j++){
if((module[1], 1) in cases){
if(as = GetArraySize(cases)){
x=0;
for (k=1;k<=as;k++){
if ((module[1], k) in cases){
val1 = cases[module[1], k];
val2 = module[j];
if (val1 == val2){
x=0;
break;
}else{
x=k;
y=k+1;
}
}else
x=k;
}
if (x == GetArraySize(cases)){
cases[module[1], y] = module[j];
}
}else{
cases[module[1], j-1] = module[j];
}
}else{
cases[module[1], j-1] = module[j];
}
}
}
return GetArraySize(cases);
}
Source: http://community.livejournal.com/code_wtf/116738.html
-
пятничное :-)
Date: 11/30/07
Keywords: no keywords
#!/usr/bin/perl
$_='
$q ="\ 47"; wh
ile ($ ;=
$z += .5 ){
%c= $r=0;$/ ="";whi le(2
0+ $z>($;+=.05)){$c{int$ _+ 2
6+ 2*($ r+= .0 2) *
s in$ ;}{1 -$_
+1 0+ int $r*c o s
$ ;} =1for(0. .1) }$
t =r ever se;$ /. =`
c le ar `. " #!
/ usr /bi n/ pe
rl \n\ $_ =$q \n" ;
fo r$y (1..20){$c{$_} {
$ y }? $ /.=chop$t :
($/ . =" \4
0") for(0. .53) ;
$/. ="\n"}pri nt"$/$ q;
s; ". chr(9 2)."s;;g;eval\n "}
';s;\s;;g;eval
отсюда: http://perlmonks.org/?node_id=176043
Source: http://community.livejournal.com/code_wtf/116601.html
-
,-)
Date: 11/29/07
Keywords: html
class SomeClass {
...
function _NormalizeString($string) {
$string = (isset($this->needToStripTags) && $this->needToStripTags) ? strip_tags($string) : $string;
$string = stripslashes($string);
if ($this->_needToConvert) {
$string = strtr($string, $this->_htmlEsc);
$string =
$string = strtr($string, array_flip($this->_htmlEsc));
}
return $string;
}
}
Source: http://community.livejournal.com/code_wtf/116304.html
-
Случайное число.
Date: 11/29/07
Keywords: no keywords
Сегодня узнал из реального кода новый способ сгенерировать случайное число из промежутка. Тут не скопированый код, но показывает идею:
int getRandomNumber(int N)
{
std::vector<int> tmp;
for (int i = 0; i < N; ++i)
tmp.push_back(i);
std::random_shuffle(tmp.begin(), tmp.end());
return tmp[0];
}
|
_Winnie C++ Colorizer |
Source: http://community.livejournal.com/code_wtf/116140.html
-
JS из одного проекта, доставшегося в наследство
Date: 11/29/07
Keywords: html
Шедевр 1
this.cell.childNodes[1].childNodes[3].childNodes[1].firstChild.data=this.name;
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[5].childNodes[0].data=fields_name(top.opener.pictures[this.id].fields);
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[9].childNodes[0].data=top.opener.paper.price;
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[13].childNodes[0].data=top.opener.pictures[this.id].count;
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[19].childNodes[1].childNodes[0].data=mceil(top.opener.pictures[this.id].count*top.opener.paper.price);
Шедевр 2
count: function(newcount){
if(top.opener.pictures[this.id].count){
top.opener.pictures[this.id].old=top.opener.pictures[this.id].count;
this.cell.childNodes[1].childNodes[5].style.display='';
the_gal2.recount(0-top.opener.pictures[this.id].count,-1);
top.opener.pictures[this.id].count=0;
}else{
this.cell.childNodes[1].childNodes[5].style.display='none';
top.opener.pictures[this.id].count=top.opener.pictures[this.id].old;
the_gal2.recount(top.opener.pictures[this.id].count,1);
}
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[13].childNodes[0].data=top.opener.pictures[this.id].count;
this.cell.childNodes[1].childNodes[3].childNodes[3].childNodes[19].childNodes[1].childNodes[0].data=mceil(top.opener.pictures[this.id].count*top.opener.paper.price);
}
Смысл в следующем. Этот код меняет текст и атрибуты у некоторого подмножества HTML тегов через DOM. При малейшем изменении верстки циферки у childNodes[#] нужно пересчитывать заново =)
Source: http://community.livejournal.com/code_wtf/115613.html
-
с баша седня :)
Date: 11/19/07
Keywords: no keywords
xxx> if($pay == 3){ $pay = 3; }else{ $pay = $pay; }
xxx> О ВРЕДЕ ИНДИЙСКОГО КОДА
yyy> да, это вобщем если стоит 3 то и пускай стоит _)
Source: http://community.livejournal.com/code_wtf/114993.html
-
PHP Manual
Date: 11/19/07
Keywords: php
Замечательный образец из руководства по PHP:
var_dump(is_file('a_file.txt')) . "\n";
var_dump(is_file('/usr/bin/')) . "\n";
?>
Source: http://community.livejournal.com/code_wtf/114918.html
-
NetBeans 6.0 beta 1
Date: 11/16/07
Keywords: no keywords
FileObject folder = file.getParent().getParent().getParent().getParent().getParent().getParent().getParent().getFileObject("data/goldenfiles");
Source: http://community.livejournal.com/code_wtf/114440.html
-
бывает и такое...
Date: 11/15/07
Keywords: no keywords
void CBaseCleaner :: CheckPrepaired() const
{
if ( ! m_bPrepaired )
ASSERT (m_bPrepaired == true ) ;
}
Source: http://community.livejournal.com/code_wtf/114327.html
-
Такой себе Replace
Date: 11/14/07
Keywords: no keywords
url = fonts[i].attributes.url.split('/fonts/').join('/crossdomain_fonts/');
Source: http://community.livejournal.com/code_wtf/113848.html
-
CSS и новое мышление
Date: 11/13/07
Keywords: no keywords
u {
font-family: Tahoma, Arial, sans-serif;
font-size: 11px;
padding-left:3px;
padding-right:30px;
text-decoration: none;
color: #89898a
}
Комментарий верстальщика:
просто при наличии сцц не надо думать в рамках обычных тегов
Source: http://community.livejournal.com/code_wtf/113648.html
-
Thread.destroy()
Date: 11/13/07
Keywords: no keywords
Интересный способ выхода из треда. Язык -- жава.
statusUpdate = new Thread() {
public void run() {
while (runUpdate) {
// [code skipped]
}
// [code skipped]
Thread.currentThread().destroy();
return;
}
};
Source: http://community.livejournal.com/code_wtf/113334.html
-
JavaScript, проверка e-mail адреса
Date: 11/13/07
Keywords: no keywords
str = document.getElementById('uemail'+id).value;
var at="@"
var dot="."
var lat=str.indexOf(at)
var lstr=str.length
var ldot=str.indexOf(dot)
if (str==null || str=="" || str.indexOf(at)==-1 || str.indexOf(at)==0
|| str.indexOf(at)==lstr || str.indexOf(dot)==-1 || str.indexOf(dot)==0
|| str.indexOf(dot)==lstr || str.indexOf(at,(lat+1))!=-1 || str.substring(lat-1,lat)==dot
|| str.substring(lat+1,ldot).length<1 || str.substring(lat+1,lat+2)==dot
|| str.indexOf(dot,(lat+2))==-1 || str.indexOf(" ")!=-1 || str.substring(ldot+1,lstr).length !=2)
{
error_message = error_message + "* Invalid Email\n";
error = true;
}
Source: http://community.livejournal.com/code_wtf/113099.html
-
много кавычек
Date: 11/12/07
Keywords: php, sql, web
Пожаловались мне в аську давеча на чужой код...
$sql = "UPDATE " . USERS_TABLE . "SET . $username_sql . $passwd_sql . "
user_email = '" . str_replace("\'", "''", $email) . "',
user_icq = '" . str_replace("\'", "''", $icq) . "',
user_website = '" . str_replace("\'", "''", $website) . "',
user_occ = '". str_replace("\'", "''", $occupation) . "',
user_from = '" . str_replace("\'", "''", $location) . "',
user_interests = '" . str_replace("\'", "''", $interests) . "',
user_sig = '" . str_replace("\'", "''", $signature) . "',
user_viewemail = $viewemail, user_aim = '" . str_replace("\'", "''", $aim) . "',
...
WHERE user_id = $user_id";
19:48:58: и суко где то тут падает
19:49:13: ктото толи мод для phpBB делал
19:49:16: толи че то
19:49:21: толи сам phpBB такой агуеный
...
19:53:54: залечил
19:54:03: запутался человек ф кавычках
Source: http://community.livejournal.com/code_wtf/112766.html