- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
// File.cpp
QString File::size() const
{
return QString::number(QFileInfo(m_path).size());
}
// ... somewhere in the code...
File* message = ...
...
if (message->size() == "0")
return;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+4
// File.cpp
QString File::size() const
{
return QString::number(QFileInfo(m_path).size());
}
// ... somewhere in the code...
File* message = ...
...
if (message->size() == "0")
return;
Commit b1aef142 "Refactoring"
Р - Рефакторинг
Но сравнение все равно подозрительное.
P.S. quick ui quick!
А вот если оператор сравнения в структуре не перегрузить, то
...
черт.
Забыл. То ли будет пополевое сравнение, то ли сравнение будет не определено. Скорее, второе. Но точно не сравнение адресов.
https://en.cppreference.com/w/cpp/language/operator_comparison#Three-way_comparison
https://en.cppreference.com/w/cpp/language/default_comparisons
А я еще когда-то угорал с JS и его === :(
std::strong_equality::equal
std::partial_ordering::equivalent
std::weak_ordering::equivalent
std::weak_equality::equivalent
И это я перечислил не все значения... Как всё сложно...
https://govnokod.ru/25937
Вот так и думал, что в новом стандарте что-то такое введут.
В C++ struct это синоним класса просто там всё public.
Просто переводит число в строчку
А QString::number(int) возвращает QString. Это не скомпилируется, поскольку в QString нет неявного конструктора/преобразования из int.
Да и я малость ебнуты и не способне к общению IRL.