- 1
- 2
- 3
- 4
- 5
template<typename Class>
void Raise(int Code)
{
throw Class(Code);
};
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+165
template<typename Class>
void Raise(int Code)
{
throw Class(Code);
};
Продолжение эпоса из уже всем знакомого проекта, доставшегося по наследству, в котором активно используются исключния.
+116
var sEmailRecipient = string.Empty;
string m_sPhysicalPath = "";
if (SaveType == "both" || SaveType == "email")
{
List<User> recipients = null;
if (RecipentSelectMode == "auto")
{
if (!string.IsNullOrEmpty(AutoRecipient))
recipients = Notification.ConvertToUsers(AutoRecipient, MethodologyId, CurrentObjectId, CurrentUserId, CurrentEntityName);
}
if(RecipentSelectMode == "manual"){
if (Recipient != null)
sEmailRecipient = EvaluateExpression(CurrentUserId, MethodologyId, MainEntityName, MainObjectId, Recipient);
}
m_sPhysicalPath = Document.AbsoluteApplicationPath + "/" + p_sReportPath.Substring(p_sReportPath.LastIndexOf("storage"));
if (RecipentSelectMode == "auto")
{
foreach (User user in recipients)
{
if (Regex.IsMatch(user.Email, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
{
SendReportByEmail(m_sPhysicalPath, user);
}
}
}
if (RecipentSelectMode == "manual")
{
if (Regex.IsMatch(Recipient, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
{
SendReportByEmail(m_sPhysicalPath, new User { Email = sEmailRecipient });
}
else
{
return CreateResult(GetClientData(), "Email message sending failed - incorrect email address - " + Recipient, (int)ReportRenderingFailType.Success);
}
}
}
if (SaveType == "email")
{
FileInfo file = new FileInfo(m_sPhysicalPath);
if (file.Exists)
file.Delete();
}
Отправляет отчет по email
+145
<?php
class Pwd {
private static $pc='bcdfghjklmnprstvwxyz';
private static $pv='aeiou';
private static $pd='0123456789';
private static $ps='!@#$%^&*_-+=';
private static function randsub($s) {
$c=$s[rand(0, strlen($s)-1)];
return rand(0, 1)?strtoupper($c):strtolower($c);
}
public static function password($min=4,$max=10) {
$p='';
for($i=0;$i<$max;$i++) {
switch (rand(0, 7)) {
case 0:
$p.=self::randsub(self::$pc);
break;
case 1:
$p.=self::randsub(self::$pv);
break;
case 2:
$p.=self::randsub(self::$pd);
break;
case 3:
$p.=self::randsub(self::$pc).self::randsub(self::$pv);
break;
case 4:
$p.=self::randsub(self::$pv).self::randsub(self::$pc);
break;
case 5:
$p.=self::randsub(self::$pc).self::randsub(self::$pv).self::randsub(self::$pc);
break;
case 6:
$p.=self::randsub(self::$pv).self::randsub(self::$pc).self::randsub(self::$pv);
break;
case 7:
$p.=self::randsub(self::$ps);
break;
}
}
return substr($p, 0,rand($min, $max));
}
}
хитровыебанный лисапедрильный пассвордоген.
и PHP тут не причем, лень - это зло = )
+154
http://vkontakte.ru/
<noscript><meta http-equiv="refresh" content="0; URL=/badbrowser.php"></noscript>
http://vkontakte.ru/badbrowser.php
<script type="text/javascript">
<!--
//window.checkbrowser = true;
if (window.checkbrowser) {
try {
if (new XMLHttpRequest()) {
location.replace('/');
}
} catch(e) {
try {
if (new ActiveXObject('Msxml2.XMLHTTP')) {
location.replace('/');
}
} catch(e) {}
try {
if (new ActiveXObject('Microsoft.XMLHTTP')) {
location.replace('/');
}
} catch(e) {}
}
}
-->
</script>
Вот так суровые вконтактостроители отправляют на йуг пользователей NoScript.
+229
;uint64_t foo(uint32_t x, uint64_t y) { return x*y; }
sub esp, 0×8
mov edx, [esp+0x14]
mov ecx, [esp+0xc]
mov eax, [esp+0x10]
mov [esp+0x4], esi
mov esi, edx
imul esi, ecx
mul ecx
mov [esp], ebx
mov ebx, [esp]
add esi, edx
mov edx, esi
mov esi, [esp+0x4]
add esp, 0×8
ret
оптимизированое умножение - gcc 4.2.4
+137
var companyStr:String = "adobe";
trace(companyStr.length); // 10
Найдено в доке к Flash, после покупки Macromedia поиском и заменой имя сменили, коммент забыли.
−349
Function shr(ByVal a As Long, ByVal i As Long) As Long
Dim r As Variant
r = a / (2 ^ i)
shr = Fix(r)
End Function
'используется для получения значения n-го бита таким вот образом
if (shr(value,n) mod 2)=1 then
....
end if
'в другом месте почему-то биты проверяются по-другому
For i = 2 To Len(s)
a = Asc(Mid(s, i, 1))
b = (q Mod (2 ^ (i - 1))) \ (2 ^ (i - 2))
If b = 1 Then a = a - 32 'сути этого я так и не понял
t = t + Chr(a)
Next
мастерская работа с битами. епта я б на асме это в 1 строку сделал
+167
function my_isinteger($int)
{
$new_int = '';
for($i=0;$i<strlen($int);$i++)
{
if( $int[$i] == "0" )
{
$new_int .= "0";
}
if( $int[$i] == "1" )
{
$new_int .= "1";
}
if( $int[$i] == "2" )
{
$new_int .= "2";
}
if( $int[$i] == "3" )
{
$new_int .= "3";
}
if( $int[$i] == "4" )
{
$new_int .= "4";
}
if( $int[$i] == "5" )
{
$new_int .= "5";
}
if( $int[$i] == "6" )
{
$new_int .= "6";
}
if( $int[$i] == "7" )
{
$new_int .= "7";
}
if( $int[$i] == "8" )
{
$new_int .= "8";
}
if( $int[$i] == "9" )
{
$new_int .= "9";
}
}
if ( $int == $new_int )
{
return(True);
}
else
{
return(False);
}
}
Набрел в исходниках старого проекта который до сих пор работает) но начинал я его писал лет 5 назад), знаний тогда было маловато
+146.9
class ToBeOrNotToBe{};
void distortion(ToBeOrNotToBe...)
{
}
Код компилируется в 2008 MVS
−134
Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
ТекКвота = ДанныеСтроки.Ссылка;
мЗапросДок = Новый Запрос;
мЗапросДок.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(СУММА(СДотчетТовары.Количество), 0) КАК Количество
|ИЗ
| Документ.СДотчет.Товары КАК СДотчетТовары
|ГДЕ
| СДотчетТовары.Ссылка.Проведен = ИСТИНА
| И СДотчетТовары.КвотаОтчета = &Квота";
мЗапросДок.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросДок.Выполнить().Выбрать();
Выборка.Следующий();
ВДоке = Выборка.Количество;
ОформлениеСтроки.Ячейки.СогласноСД.Значение = ?(ВДоке=0,"",ВДоке);
мЗапросПОС = Новый Запрос;
мЗапросПОС.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(СписаноПоПОСОбороты.КоличествоОборот, 0) КАК Количество
|ИЗ
| РегистрНакопления.СписаноПоПОС.Обороты(, , , Квота = &Квота) КАК СписаноПоПОСОбороты";
мЗапросПОС.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросПОС.Выполнить().Выбрать();
Выборка.Следующий();
ВПОС = Выборка.Количество;
ОформлениеСтроки.Ячейки.СогласноПОС.Значение = ?(ВПОС=0,"",ВПОС);
мЗапросРег = Новый Запрос;
мЗапросРег.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(Квоты.КолВЗаказахПокупателя, 0) КАК КолВЗаказахПокупателя,
| ЕСТЬNULL(ЗаказПоставщику.КолВЗаказахПоставщику, 0) КАК КолВЗаказахПоставщику
|ИЗ
| (ВЫБРАТЬ
| СУММА(ЕСТЬNULL(ЗаказПоставщикуТовары.Количество, 0)) КАК КолВЗаказахПоставщику
| ИЗ
| Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
| ГДЕ
| ЗаказПоставщикуТовары.КвотаЗаказа = &Квота) КАК ЗаказПоставщику,
| (ВЫБРАТЬ
| СУММА(ЕСТЬNULL(КвотыЗаказовПокупателейОстаткиИОбороты.КоличествоПриход, 0)) КАК КолВЗаказахПокупателя
| ИЗ
| РегистрНакопления.КвотыЗаказовПокупателей.ОстаткиИОбороты(
| ,
| ,
| ,
| ,
| Квота = &Квота
| И ВидКвоты = ЗНАЧЕНИЕ(Перечисление.ВидыКвот.ОтчетнаяКвота)) КАК КвотыЗаказовПокупателейОстаткиИОбороты) КАК Квоты";
мЗапросРег.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросРег.Выполнить().Выбрать();
ЕстьВыборка = Выборка.Следующий();
КолВЗаказахПокупателя = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПокупателя);
КолВЗаказахПоставщику = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПоставщику);
ОформлениеСтроки.Ячейки.ВЗаказахПокупателя.Значение = КолВЗаказахПокупателя;
ОформлениеСтроки.Ячейки.ВЗаказахПоставщику.Значение = КолВЗаказахПоставщику;
КонецПроцедуры
Чудный справочник, очень быстро открывается и прокручивается. Приходится ждать по 20 секунд)))