- 1
https://pbs.twimg.com/media/CatwlfiUEAAT6-D.jpg
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+10
https://pbs.twimg.com/media/CatwlfiUEAAT6-D.jpg
+4
if(($ID+0)<1)
Оригинальное приведение типов
+1
// Определение метода Q3CanvasText::text()
class Q_COMPAT_EXPORT Q3CanvasText : public Q3CanvasItem {
//...
QString text() const;
//...
};
// Далее уже в "моем" классе строчка:
class CDevice : public CDiagramObject {
// ...
private:
Q3CanvasText * m_pTitle;
//....
public:
const QString & stitle() const { return m_pTitle->text(); } // обратим вниманиена возвращаемый тип
// ...
};
// Еще один класс и отображение тултипа при наведении
void CDiagramView::showToolTip( const QPoint & p, CDevice * d ) {
if( d ) {
QString tmp;
if( d->group() == QString::null || d->group() == "" )
tmp = ( d->stitle().left( d->stitle().indexOf(":") ) ); // вылетало здесь : d->stitle().indexOf(":") segmentation fault
else
tmp = d->group();
//.....
}
}
Нашел магию!
Юзаю Qt 4.8.6 в Linux
Под Виндой новая версия перепиливаемой проги компилится и работает,
под Линухом новая версия вылетает, старая робит.
Соль в том, что метод stitle() по факту возвращает ссылку на копию текста возвращенного Q3CanvasText::text(), которая внезапно удаляется при выходе из метода.
Но почему тот же gcc под виндой скомпилил это без багов?
−99
Дней = 90;
НачалоПериода = НачалоДня(ТекущаяДата()) - Дней*86400;
немного магии
+2
Где-то далеко в index.php:
require_once 'face.php';
А где-то внутри face.php :
require_once $_SERVER['DOCUMENT_ROOT'].'/includes/sidebar.html'
А в середине sidebar.html вот такое:
<div class="sideBoxContent" style="font-size:1.2em;">
<ul class="list">
<?php
require_once $_SERVER['DOCUMENT_ROOT'].'/config/config.php';
$dbt=db_connect();
$dbt->query("SET NAMES 'utf8'");
$resultt = $dbt->query("SELECT * FROM a_news ORDER BY date DESC LIMIT 3");
while ($myrowt = $resultt->fetch_array(MYSQLI_ASSOC))
{
echo "
<li><script>addLink('icon go-clear','/b2b/news/news.html','".$myrowt["title"]."')</script></li>";
}
$resultt->close();
$dbt->close();
?>
</ul>
<script>addLink('icon go','/b2b/news/news.html','Все новости')</script>
</div>
</div>
P.S. addLink(c, h, t) генерит <a class="c" href="h">t</a>
Господи, господи, зачем???
Нет, возможно это не говнокод. Возможно, я чего-то не понимаю в этой жизни. Но чего???
P.S. Я даже не знаю какой язык ставить. Тут и PHP, и JS...
+2
str.indexOf('#') === 0
Проверка что строка начинается с '#'
+2
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
public static bool IsNotNullOrEmpty(this string str)
{
return !string.IsNullOrEmpty(str);
}
экономия должна быть экономной
+1
langDict0.Add(eng , new string[] { ger, fre, spa, chi, rus, jap, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(ger , new string[] { eng, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(fre , new string[] { eng, ger, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(spa , new string[] { eng, ger, fre, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(chi , new string[] { eng });
langDict0.Add(rus , new string[] { eng });
langDict0.Add(jap , new string[] { eng });
langDict0.Add(por , new string[] { eng, ger, fre, spa, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(ita , new string[] { eng, ger, fre, spa, por, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(dut , new string[] { eng, ger, fre, spa, por, ita, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(pol , new string[] { eng, ger, fre, spa, por, ita, dut, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(swe , new string[] { eng, ger, fre, spa, por, ita, dut, pol, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(dan , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(fin , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(gre , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, cze, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(cze , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, rom, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(rom , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, hun, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(hun , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, slvk, bul, slvn, lit, lat, est, mal });
langDict0.Add(slvk, new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, bul, slvn, lit, lat, est, mal });
langDict0.Add(bul , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, slvn, lit, lat, est, mal });
langDict0.Add(slvn, new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, lit, lat, est, mal });
langDict0.Add(lit , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lat, est, mal });
langDict0.Add(lat , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, est, mal });
langDict0.Add(est , new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, mal });
langDict0.Add(mal, new string[] { eng, ger, fre, spa, por, ita, dut, pol, swe, dan, fin, gre, cze, rom, hun, slvk, bul, slvn, lit, lat, est });
−96
// возвращает "количество полных и неполных рублей"
// Параметры:
// Сумма - число
// Возвращаемое значение:
// число, равное ближайшему целому "сверху"
Функция ЦелМаксимальное(Сумма) Экспорт
Возврат ?(Цел(Сумма) = Сумма, Сумма, Цел(Сумма) + 1);
КонецФункции // ЦелМаксимальное()
Изобретаем велосипед округление с избытком вместе с разработчиками типовых конфигураций 1С.
Обнаружено в:
ЗУП 2.5.95.1
БП 1.6.8.3
0
$collections = Yii::app()->db->createCommand()
->selectDistinct('prod.product_id,cc.category_id AS id, cc.code AS code,cc.img AS '
. 'pic,cc.category_name AS name, pl.category_name AS ln_name, '
. 'fvs.value AS country,c2.category_name AS parent_category,'
. 'c2.category_id AS p_id, c2.code AS p_code')
// ->select()
->from('Products prod')
->join('Products_Categoryes pc', 'prod.product_id = pc.product_id')
->join('Categories c', 'c.category_id = pc.category_id')
->join('Products_Categoryes ppp', 'ppp.category_id = c.category_id')
->join('Products p', 'p.product_id = ppp.product_id')
->join('Products_Categoryes pppccc', 'pppccc.product_id = ppp.product_id ')
->join('Categories cc', 'cc.category_id = pppccc.category_id
AND cc.category_left > :cat_left
AND cc.category_right < :cat_right
AND cc.category_level = 3', array(':cat_left' => $brends['category_left'], ':cat_right' => $brends['category_right']))
->join('Categories c2', 'cc.category_left > c2.category_left
AND cc.category_right < c2.category_right
AND c2.category_level = cc.category_level - 1')
->leftJoin('kk_categories_ln pl', ' pl.ln_id = :ln '
. 'AND pl.category_id = cc.category_id', array(':ln' => $ln_id))
->leftJoin('Feature_Product_Values fpv', 'p.product_id = fpv.product_id '
. 'AND feature_id = :country_id ', array(':country_id' => $counrty_id))
->leftJoin('Feature_Values_string fvs', 'fvs.feature_id = fpv.feature_id')
->group('cc.category_id')
->where($where, $params)
->queryAll();