-
Список говнокодов пользователя Elvenfighter
Всего: 116
-
−11
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
std::string reverseWords(const std::string &input) {
std::list<char> result{};
auto insertIt = result.end();
for (auto i = input.size() ; i > 0; --i) {
const char c = input[i - 1];
if (c != ' ') {
insertIt = result.insert(insertIt, c);
} else {
result.push_back(c);
insertIt = result.end();
}
}
return std::string(result.begin(), result.end());
}
Реверснуть слова в строке за один проход цикла
https://www.linux.org.ru/forum/development/13379833
Специальную олимпиаду оглашаю открытой!
Elvenfighter,
26 Апреля 2017
-
−18
- 1
- 2
- 3
- 4
- 5
- 6
#define EXPECT_EQ(expected, actual) \
assert(expected == actual);
int main() {
EXPECT_EQ(std::array<char, 3>(), std::array<char, 3>());
}
Макрошаблоно-проблемы. Inspired by gtest
Спойлер:
error: macro "EXPECT_EQ" passed 4 arguments, but takes just 2
EXPECT_EQ(std::array<char, 3>(), std::array<char, 3>());
Elvenfighter,
05 Апреля 2017
-
−125
- 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
#include <iostream>
class Base {
public:
void publicThingy() const {
std::cout << "Base::publicThingy()\n";
privateThingy();
}
private:
virtual void privateThingy() const {
std::cout << "Base::privateThingy()\n";
}
};
class Derived : public Base {
private:
virtual void privateThingy() const {
std::cout << "Derived::privateThingy()\n";
}
};
int main() {
const Base &b = Derived();
b.publicThingy();
}
Для любителей покритиковать костыли в крестах. Еще один повод: vtable'y до лампочки на private/public.
https://wandbox.org/permlink/tAjx2MKozsbJ8QyT
Elvenfighter,
29 Марта 2017
-
−12
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
template <typename T, typename = std::enable_if_t<std::is_floating_point<T>::value>>
inline void
_getAttr(const IAttributes& attrs, int idx, double& number)
{
if (attrs.has(idx))
{
const IValueString& attr = attrs.get(idx);
number = std::stod(std::string(attr.c_str(), attr.length()));
}
}
Шаблонили-шаблонили на невышаблонили
Спойлер: строки 1 и 3
Elvenfighter,
03 Марта 2017
-
−104
- 1
int main() { throw "Ня, пока" ; }
Elvenfighter,
02 Марта 2017
-
−15
- 1
- 2
- 3
- 4
// std::string currentStr = ...
auto lastPosition = currentStr.rfind(',') + 1;
auto position = currentStr.length();
int requestNum = atoi((currentStr.substr(lastPosition, position - lastPosition)).c_str());
Здесь гениально почти все
Elvenfighter,
02 Марта 2017
-
−36
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
// std::map<uint32_t, uint32_t> _mcpCarrierMap;
uint32_t MCPCarrierUtil::virtualToReal(uint32_t cxr)
{
for (const auto& mapping : _mcpCarrierMap)
{
if (mapping.first == cxr)
return mapping.second;
}
return cxr;
}
Даже не знаю что єто. Толи незнание стандартной библиотеки, толи хитрьій умьісл.
Elvenfighter,
05 Января 2017
-
−21
- 1
- 2
sOW << sn << " ";
if (!sOW.str().empty())
Причем
std::ostringstream sOW;
std::string sn;
Elvenfighter,
17 Ноября 2016
-
−16
- 1
- 2
- 3
- 4
- 5
- 6
- 7
/* public static */ bool
TestFooFactory::checkItem(const Foo& item)
{
if (!&item)
return false;
return true;
}
null-ccылки в C++? Легко!
Elvenfighter,
02 Ноября 2016
-
−20
- 1
- 2
- 3
- 4
if (true == (itinRowCellIter->first.flags() & ItinIndex::ITININDEXCELLINFO_FAKEDIRECTFLIGHT))
{
// ...
}
Bool-shit ** 2
Elvenfighter,
13 Октября 2016