- 1
- 2
- 3
void write_msg(const QString& msg, AsyncMp* mp) {
written(QString(mp?"%1[%2]":"" " %3").arg(mp->my_host()).arg(mp->my_index()).arg(msg));
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
void write_msg(const QString& msg, AsyncMp* mp) {
written(QString(mp?"%1[%2]":"" " %3").arg(mp->my_host()).arg(mp->my_index()).arg(msg));
}
А потом удивляемся: чего же оно не работает?
0
int proverka_na_chislo(string str){
int l=0;
for(unsigned int i=0; i<str.length();i++) {
if(str.compare(i,i+1,"0")!=0){
if(str.compare(i,i+1,"1")!=0){
if(str.compare(i,i+1,"2")!=0){
if(str.compare(i,i+1,"3")!=0){
if(str.compare(i,i+1,"4")!=0){
if(str.compare(i,i+1,"5")!=0){
if(str.compare(i,i+1,"6")!=0){
if(str.compare(i,i+1,"7")!=0){
if(str.compare(i,i+1,"8")!=0){
if(str.compare(i,i+1,"9")!=0){
throw std::invalid_argument("invalid argument\n");
l=-1;
}
}
}
}
}
}
}
}
}
}
}
return l;
}
Проверка на число.
0
#include "qscriptdebuggercodefinderwidgetinterface_p.h"
#include "qscriptdebuggercodefinderwidgetinterface_p_p.h"
QT_BEGIN_NAMESPACE
QScriptDebuggerCodeFinderWidgetInterfacePrivate::QScriptDebuggerCodeFinderWidgetInterfacePrivate()
{
}
QScriptDebuggerCodeFinderWidgetInterfacePrivate::~QScriptDebuggerCodeFinderWidgetInterfacePrivate()
{
}
QScriptDebuggerCodeFinderWidgetInterface::~QScriptDebuggerCodeFinderWidgetInterface()
{
}
QScriptDebuggerCodeFinderWidgetInterface::QScriptDebuggerCodeFinderWidgetInterface(
QScriptDebuggerCodeFinderWidgetInterfacePrivate &dd,
QWidget *parent, Qt::WindowFlags flags)
: QWidget(dd, parent, flags)
{
}
QT_END_NAMESPACE
Qt 4.6. Файл src/scripttools/debugging/qscriptdebuggercodefinderwidgetinterface .cpp, типичный образец исходного кода класса Qt.
0
LPSTR s = new CHAR(sizeof("Unknown error!"));
strcpy(s,"Unknown error!");
Копирование строки
0
// Код на Qt
QStringList list;
...
if (0 == QString::compare(list[i].data()[0],' ',Qt::CaseInsensitive))
{
...
}
..
Сравнение нулевого символа i-той строки с пробелом)))
0
/*
* ToDo: дописать, что нужно сделать.
*/
0
// Finally, parse shader script and load data
if (!LoadShaderResource(_proxyShader, scriptData))
{
runtime_assert_msg(ASSERT_Forced, "Proxy shader failed to initialize.\n"
"You are not assumed to be using such sucking hardware.\n"
"Kill your GPU and then kill yourself, looser!\n\n"
"Best regards, Abyss Lights Team");
}
Хорошо что в релиз не попало :) Совершенно случайно нашел в render системе.
0
std::string basic::_gettime(time_t t)
{
string res;
string tt;
//must be Wdy, DD-Mon-YYYY HH:MM:SS GMT
struct tm *tm_res;
tm_res=gmtime(&t);
switch(tm_res->tm_wday)
{
case 0:
res+="Sun";
break;
case 1:
res+="Mon";
break;
case 2:
res+="Tue";
break;
case 3:
res+="Wed";
break;
case 4:
res+="Thu";
break;
case 5:
res+="Fri";
break;
case 6:
res+="Sat";
break;
default:
throw "Internal error: cgi_app::_gettime(): Day num>6!";
}
res+=", ";
tt=itoa(tm_res->tm_mday);
if(tt.length()==1)
tt="0"+tt;
res+=tt;
res+="-";
switch(tm_res->tm_mon)
{
case 0:
res+="Jan";
break;
case 1:
res+="Feb";
break;
case 2:
res+="Mar";
break;
case 3:
res+="Apr";
break;
case 4:
res+="May";
break;
case 5:
res+="Jun";
break;
case 6:
res+="Jul";
break;
case 7:
res+="Aug";
break;
case 8:
res+="Sep";
break;
case 9:
res+="Oct";
break;
case 10:
res+="Nov";
break;
case 11:
res+="Dec";
break;
default:
throw "Internal error: cgi_app::_gettime(): Month num>11!";
}
res+="-";
tt=itoa(tm_res->tm_year+1900);
res+=tt;
res+=" ";
tt=itoa(tm_res->tm_hour);
if(tt.length()==1)
tt="0"+tt;
res+=tt;
res+=":";
tt=itoa(tm_res->tm_min);
if(tt.length()==1)
tt="0"+tt;
res+=tt;
res+=":";
tt=itoa(tm_res->tm_sec);
if(tt.length()==1)
tt="0"+tt;
res+=tt;
res+=" GMT";
}
Делаю класс для работы с CGI. Сначала хотел использовать какое-нибудь готовое решение, но ничего подходящего не нашел. По общей концепции понравилась библиотека "CGI C++ Library v0.30a". До тех пор, пока не посмотрел исходники более внимательно... Это функция, которая формирует строку для поля заголовка HTTP "Last-Modified".
0
if(p) {
if (p->m_String[0] == 0) {
strcpy("foo", p->m_String);
}
DrawText(hdc, p->m_String, strlen(p->m_String), &rc, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
}
и такие веселые куски попадаются в официальном примере написания плагинов на сайте Mozilla
пруф линк - http://mxr.mozilla.org/seamonkey/source/modules/plugin/samples/npruntime/plugin.cpp - строка 750
0
#if 0
n = NPN_GetStringIdentifier("prompt");
NPVariant vars[3];
STRINGZ_TO_NPVARIANT("foo", vars[0]);
STRINGZ_TO_NPVARIANT("bar", vars[1]);
STRINGZ_TO_NPVARIANT("foof", vars[2]);
NPN_Invoke(sWindowObj, n, vars, 3, &rval);
if (NPVARIANT_IS_STRING(rval)) {
printf ("prompt returned '%s'\n", NPVARIANT_TO_STRING(rval).utf8characters);
}
NPN_ReleaseVariantValue(&rval);
#endif
и это официальный пример написания плагина с сайта Mozilla
пруф линк - http://mxr.mozilla.org/seamonkey/source/modules/plugin/samples/npruntime/plugin.cpp - строка 564