-
Список говнокодов пользователя Elvenfighter
Всего: 116
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
select
x1.airport, x1.amount, x1.exempt
from
Taxes x1
where
x1.code = 'departure'
and x1.airport in (
select
xx1.airport
from
(select
yx1.airport
from
Taxes yx1
where
yx1.airport = x1.airport
and yx1.code = x1.code
group by
yx1.airport, yx1.amount, yx1.exempt
) xx1
group by xx1.airport
having count(xx1.airport) > 1
)
;
Давно я не копался в SQL. Вот что нагородил :(
Суть такова: у аэропортов есть departure tax, который может быть разный в зависимости от некоторых критериев (нерелевантно каких).
А может быть и одинаковый. Но все равно аэропорт может иметь несколько рядков в БД (с одинаковым amount). А еще может быть exempt = 'X',
что тождественно amount = 0.
Задача: выбрать все рядки с departure tax для аэропортов у которых taxamt/exempt разный в зависимости от некоторых других критериев.
Elvenfighter,
10 Мая 2018
-
+2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
struct Bar {};
class Foo {
public:
Bar& bar() const { return *bp; }
private:
Bar b;
Bar * const bp = &b;
};
https://wandbox.org/permlink/7JPzrvslrUwbvREb
Как называется данный говнопаттерн?
Elvenfighter,
27 Апреля 2018
-
0
- 1
- 2
- 3
- 4
- 5
try
{
// ... code ...
}
catch (ErrorResponseException& ex) { throw; }
Documenting-with-code?
Elvenfighter,
06 Апреля 2018
-
+1
- 1
- 2
- 3
- 4
- 5
- 6
- 7
// OK
class foo {};
void foo();
// не ОК: error: 'void bar()' redeclared as different kind of symbol
namespace bar {}
void bar();
"Двойные стандарты"
Elvenfighter,
22 Марта 2018
-
+4
- 1
- 2
- 3
- 4
- 5
- 6
- 7
bool MyClass::operator==(int elem){
if (list.isExist(elem)){
list.remove(elem);
return true; // Операция завершена успешно
}
return false; // Элемент elem не найден в списке
}
(C) https://www.linux.org.ru/forum/development/14063699?cid=14063991
Вырвано из контекста (треда), но считаю данная кучка должна лежать здесь.
Elvenfighter,
05 Марта 2018
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
class PriceCache {
public:
FlightStorage(const std::size_t count) {
for (std::size_t i = 0; i < count; ++i) {
flights.emplace_back(FlightCache::get(i));
prices.emplace_back(&flights.back(), Price::getFor(flights.back()));
}
}
private:
std::vector<Flight> flights;
std::vector<const Flight *, double> prices;
};
"случайные сегфолты при обращении к PriceCache::prices"
Elvenfighter,
28 Февраля 2018
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use diagnostics;
use LWP;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
use JSON;
use HTML::TreeBuilder;
use HTML::FormatText;
my $ua = LWP::UserAgent->new();
$ua->agent('advice/0.9');
my $uri = 'http://fucking-great-advice.ru/api/random';
my $request = HTTP::Request->new('GET', $uri);
my $response = $ua->request($request);
my $content = from_json($response->content(), {utf8 => 1});
binmode(STDOUT, ':utf8');
my $tree = HTML::TreeBuilder->new->parse_content($content->{'text'});
my $formatter = HTML::FormatText->new(leftmargin => 0, rightmargin => 50);
print $formatter->format($tree);
Пользуйтесь на здоровье
Elvenfighter,
14 Февраля 2018
-
+3
Базовая функциональность программы cat на perl. Кто короче?
(только возможности самого языка без exec и подобных, шеллы вне олимпиады)
Elvenfighter,
24 Сентября 2017
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
bool valueToString(std::string_view str, float& value) try {
const auto end = std::numeric_limits<std::size_t>::max();
const float parsed = std::stof(str.data(), &end);
if (end != str.size())
return false;
value = parsed;
return true;
} catch (...) {
return false;
}
string_view пирформанс! Спойлер: да, там std::stof
Elvenfighter,
22 Сентября 2017
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
#include <iostream>
#include <type_traits>
#include <functional>
template <typename Function, typename... Args>
auto call(Function function, Args&&... args) {
return std::move(function)(std::forward<Args>(args)...);
}
class Foo {
public:
void say(int a) const { std::cout << "Foo::say(int a = " << a << ")\n"; }
};
int main() {
call(std::mem_fn(&Foo::say), Foo(), 42);
}
Ничего особенного. Просто ЙЦУКЕН!!!!111, как оно вообще работает?
Elvenfighter,
28 Июля 2017