- 1
for ( ; currnet->prev != NULL; (*this)-- );
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+53
for ( ; currnet->prev != NULL; (*this)-- );
медод везвращения итератора к началу
+53
{
...
_tswfstring contentID = fileName;
_tswfstring::size_type index = fileName.find_last_of ( _T("\\") );
if ( index != -1 )
contentID.erase(0, index + 1);
TCHAR name[10] = {0};
memcpy(name, contentID.c_str() + contentID.length() - 9, 9 * sizeof(TCHAR));
if(name[6] == _T('B') || name[6] == _T('b')) //to upper case if .bmp
{
name[6] = _T('B');
name[7] = _T('M');
name[8] = _T('P');
}
}
+53
static uint8_t const FREE = static_cast<uint8_t>(0);
static uint8_t const USED = static_cast<uint8_t>(1);
static char_t const * const THINKING = &"thinking"[0];
static char_t const * const HUNGRY = &"hungry "[0];
static char_t const * const EATING = &"eating "[0];
Из демы QP/C++ библиотеки. Вот в таком духе очень много кода.
Индустриальщики, после перехода на С++, похоже очень сильно страдают по отсутствию pre-ANSI C какашек, и изобретают новые.
+53
for (int i = 1; i <= s.Length; ++i) {
if (s[i] == '/') {
s = s.SubString(1, i) + s.SubString(i, MaxInt);
++i;
}
}
Кручу-верчу запутать хочу. Кто с первого раза догадается, в чём задача кода - получит пирожок с полочки.
P.S. Строки билдеровские, нумерация с 1. SubString принимает индекс начала и количество символов.
+53
int s = 0;
string N;
getline(cin, N);
// Прости господи
for (int i = 0; i < N.length(); i++)
if (N[i] != 0)
s += N[i] - 48;
Глянул свой недавний код
+53
class ParseError : public std::exception{
string s;
explicit ParseError(const std::string& s) : s(s) {}
const char* what() const throw() { return s.c_str(); }
};
Это мне нужно в своём исключении-потомке обязательно перегрузить what и добавить свою строку для хранения, чтобы данные, переданные в конструктор s по указателю обязательно выжили после размотки стека.
+53
//
// 'compare_keywords()' - Compare two keywords...
//
extern "C" {
int
compare_keywords(const void *a,
const void *b) {
return (strcmp(*((const char **)a), *((const char **)b)));
}
}
+53
void MainWindow::on_actionHelp_triggered()
{
bool helpNoWritten = 0;
QDir d(QCoreApplication::applicationDirPath()+QDir::separator()+"help");
d.makeAbsolute();
if (d.exists() && d.entryList(QDir::Files).size())
helpNoWritten = !QDesktopServices::openUrl(QUrl::fromUserInput(QFileInfo(d.entryList(QDir::Files).at(0)).absoluteFilePath()));
else
helpNoWritten++;
if (helpNoWritten)
QMessageBox::warning(0,"Warning",QString::fromUtf8("Похоже документацию так никто и не написал... можете почитать исходники.\nЕсли напишете положите в папку help рядом с программой"), QString::fromUtf8("Okay..."));
}
Код вроде бы хороший, читается не очень да не суть... дело тут не в коде.
+53
BOOL IsNameInExpression(PCWSTR Expression, PCWSTR Name, DWORD len)
{
WCHAR c, b;
while (c = *Expression++)
{
if (c == L'*')
{
__loop:
switch (*Expression)
{
case '*':
Expression++;
goto __loop;
case 0:
return TRUE;
}
if (len)
{
do
{
if (IsNameInExpression(Expression, Name++, len--)) return TRUE;
} while (len);
}
return FALSE;
}
if (!len--)
{
return FALSE;
}
b = *Name++;
if (c != L'?' && b != c)
{
return FALSE;
}
}
return !len;
}
BOOL IsNameInExpression(PCWSTR Expression, PUNICODE_STRING Name)
{
RtlUpcaseUnicodeString(Name, Name, FALSE);
return IsNameInExpression(Expression, Name->Buffer, Name->Length >> 1);
}
+53
int CALLBACK ZDll::Compare(ZDll* p, ZDll* q, LPARAM lParamSort)
{
ULONG_PTR a, b;
int s = GET_Y_LPARAM(lParamSort) ? -1 : +1;
switch (GET_X_LPARAM(lParamSort))
{
default: __assume(false);
case 0:
a = p->_index, b = q->_index;
break;
case 1:
a = (ULONG_PTR)p->_BaseOfDll, b = (ULONG_PTR)q->_BaseOfDll;
break;
case 2:
a = p->_SizeOfImage, b = q->_SizeOfImage;
break;
case 3:
PCWSTR pa = p->_ImageName, pb = q->_ImageName;
if (!pa) return -s;
if (!pb) return +s;
return _wcsicmp(pa, pb)*s;
}
if (a < b) return -s;
if (a > b) return +s;
return 0;
}
INT_PTR ZModulesDlg::DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_NOTIFY:
if (((LPNMHDR)lParam)->idFrom == IDC_LIST1)
{
LVITEM lvi;
switch (((LPNMHDR)lParam)->code)
{
case LVN_COLUMNCLICK:
if ((DWORD)(lvi.iSubItem = ((LPNMLISTVIEW)lParam)->iSubItem) < 4)
{
ListView_SortItems(((LPNMHDR)lParam)->hwndFrom, ZDll::Compare,
MAKELPARAM(lvi.iSubItem, _bittestandcomplement(&_SortOrder, lvi.iSubItem)));
}
break;
case LVN_GETINFOTIP:
lvi.iItem = ((LPNMLVGETINFOTIP)lParam)->iItem;
lvi.mask = LVIF_PARAM;
if (ListView_GetItem(((LPNMHDR)lParam)->hwndFrom, &lvi))
{
if (PWSTR ImagePath = ((ZDll*)lvi.lParam)->_ImagePath)
{
if (DWORD n = ((LPNMLVGETINFOTIP)lParam)->cchTextMax)
{
WCHAR *pszText = ((LPNMLVGETINFOTIP)lParam)->pszText, c;
do
{
*pszText++ = c = *ImagePath++;
} while (c && --n);
if (c)
{
pszText[-1] = 0;
}
}
}
}
break;
}
}
break;
жесть