- 1
boost::weak_ptr<std::queue<std::vector<boost::shared_ptr<sf::Drawable>>>> _frame_queue;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+158
boost::weak_ptr<std::queue<std::vector<boost::shared_ptr<sf::Drawable>>>> _frame_queue;
очередь кадров которые поток с игровой логикой скармливает потоку ответственному за рендеринг
+171
char *f(char *s1, ...)
{ char **cp = &s1; //--адрес первого указателя
int len = 0;
// цикл для определения общей длины сцепляемых строк
while (*cp) { len += strlen(*cp); cp++; }
char *s = new char[len+1]; //--память для строки
s[0]=0; //-- "очищаем" строку
// цикл для сцепления строк
cp=&s1; //-- опять установка на 1-й параметр
while (*cp)
{ strcat(s, *cp); //-- прицепляем первую (и следующие)
cp++; //-- перемещаемся на следующую
}
return s;
}
Сцепление строк (ноль в конце)
http://www.rsdn.ru/forum/cpp/418970.1.aspx
+162
void IniRead(UnicodeString Name, int n)
{
TStringList* lst=new TStringList;
Ini->WriteString("CardNames","Card"+(UnicodeString)n,Name);
}
чувак создал переменную lst просто так, для теплоты душевной. ну хотелось ему чтоб создался stringlist!
+167
[code=cpp]
#include <iostream.h>
void main(void)
{
cout << Заключайте сообщение в кавычки;
}
[/code]
http://programmersclub.ru/01/
+163
/*
См. маткад файл по нерекурсивным цифровым фильтрам.
Рачёт дискретной последовательности отфильтрованного сигнала
У меня то в файликах уже значения, функции нету,а в маткаде такая строка
lpf(k)*x(Ta*(n-k)) - дык тут идёт расчёт функции х(т). Идея!!!
*барабанная дробь*
Сигнал повторяется с периодом 2Пи, тем более данный сигнал
парный. Знач делаем следующее
1. Вычисляем Step = |Ta*(n-k)|.
2. Так как сигнал парный и симетричный на отрезке 2Пи
то значение функции в Step = |step - 2*ПИ| тоже самое, что и
значение функции в Step. Зачем такой геморой? Ибо в файле step.dat
хначения идут до 2*Пи, тобишь до 6.283
3. В файле data.dat на строке Step ищем искомое нам значение,
по сути тоже самое, что и x(Ta*(n-k)), где х - сигнал.
Сл. функция и возвращает значение Step = |step - 2*ПИ|
*/
int FindStep(int k)
{
float step = fabs(fabs((Ta * k)) - 6.283); // (n-k) in main program
return step*1000;
}
Комментарий умилил
+146
void crash()
{
(( void(*)() )0)();
}
Good crash :D
+160
uint64_t search(StringList& who, const string& aName, const string& aSize,TypeModes aTypeMode, SizeModes aSizeMode, const string& aToken, const StringList& aExtList, void* aOwner = NULL)
{
return search(who, aName, Util::toInt64(aSize), aTypeMode, aSizeMode, aToken, aExtList,aOwner);
}
А теперь небольшой _опрос_ :
Каково, по вашему мнению, необходимое и достаточное
качество и количество параметров метода/функции, при котором необходимо(по самым разным причинам) объединять их(параметры) в _меньшее_количество_ , используя встроенные/пользовательские типы данных.
Например: https://github.com/negativ/eiskaltdcpp/blob/master/dcpp/SearchManager.h
+161
template<typename T,typename FIELD_T>
struct type_has_field{
typedef char yes_type;
struct no_type{char padding[8];};
template<class U>
static yes_type check_sig1(
U*,
FIELD_T(U::*)=&U::field // !!!Most importantly!!!
);
template<class U>
static no_type check_sig1(...);
static const bool value=sizeof(check_sig1<T>(0))==sizeof(yes_type);
};
http://www.gamedev.ru/code/forum/?id=152200
+165
>>>http://www.sql.ru/forum/actualthread.aspx?bid=21&tid=584106&hl=
if(ii==2) {
GetDlgItem(IDC_COLMAP_BUTTON3)->GetWindowRect(&lpRect);
m_stcSTSign2.SetBkColor(dwColorTip[2]);
}
if(ii==3) {
GetDlgItem(IDC_COLMAP_BUTTON4)->GetWindowRect(&lpRect);
m_stcSTSign3.SetBkColor(dwColorTip[3]);
}
if(ii==4) {
GetDlgItem(IDC_COLMAP_BUTTON5)->GetWindowRect(&lpRect);
m_stcSTSign4.SetBkColor(dwColorTip[4]);
}
if(ii==5) {
GetDlgItem(IDC_COLMAP_BUTTON6)->GetWindowRect(&lpRect);
m_stcSTSign5.SetBkColor(dwColorTip[5]);
}
if(ii==6) {
GetDlgItem(IDC_COLMAP_BUTTON7)->GetWindowRect(&lpRect);
m_stcSTSign6.SetBkColor(dwColorTip[6]);
}
if(ii==7) {
GetDlgItem(IDC_COLMAP_BUTTON8)->GetWindowRect(&lpRect);
m_stcSTSign7.SetBkColor(dwColorTip[7]);
}
if(ii==8) {
GetDlgItem(IDC_COLMAP_BUTTON9)->GetWindowRect(&lpRect);
m_stcSTSign8.SetBkColor(dwColorTip[8]);
}
if(ii==9) {
GetDlgItem(IDC_COLMAP_BUTTON10)->GetWindowRect(&lpRect);
m_stcSTSign9.SetBkColor(dwColorTip[9]);
}
if(ii==10) {
GetDlgItem(IDC_COLMAP_BUTTON11)->GetWindowRect(&lpRect);
m_stcSTSign10.SetBkColor(dwColorTip[10]);
}
if(ii==11) {
GetDlgItem(IDC_COLMAP_BUTTON12)->GetWindowRect(&lpRect);
m_stcSTSign11.SetBkColor(dwColorTip[11]);
}
if(ii==12) {
GetDlgItem(IDC_COLMAP_BUTTON13)->GetWindowRect(&lpRect);
m_stcSTSign12.SetBkColor(dwColorTip[12]);
}
if(ii==13) {
GetDlgItem(IDC_COLMAP_BUTTON14)->GetWindowRect(&lpRect);
m_stcSTSign13.SetBkColor(dwColorTip[13]);
}
if(ii==14) {
GetDlgItem(IDC_COLMAP_BUTTON15)->GetWindowRect(&lpRect);
m_stcSTSign14.SetBkColor(dwColorTip[14]);
}
if(ii==15) {
GetDlgItem(IDC_COLMAP_BUTTON16)->GetWindowRect(&lpRect);
m_stcSTSign15.SetBkColor(dwColorTip[15]);
}
if(ii==16) {
GetDlgItem(IDC_COLMAP_BUTTON17)->GetWindowRect(&lpRect);
m_stcSTSign16.SetBkColor(dwColorTip[16]);
}
if(ii==17) {
GetDlgItem(IDC_COLMAP_BUTTON18)->GetWindowRect(&lpRect);
m_stcSTSign17.SetBkColor(dwColorTip[17]);
}
if(ii==18) {
GetDlgItem(IDC_COLMAP_BUTTON19)->GetWindowRect(&lpRect);
m_stcSTSign18.SetBkColor(dwColorTip[18]);
}
----------------------------------------------------------------
P.S
IDC_COLMAP_BTN_BASE 1000
...
IDC_COLMAP_BUTTON12 1012
IDC_COLMAP_BUTTON13 1013
IDC_COLMAP_BUTTON14 1014
... f(int i)
{
GetDlgItem(IDC_COLMAP_BTN_BASE + i)->GetWindowRect(&lpRect);
arr.at(i).SetBkColor(dwColorTip[i]);
}
+160
HRESULT GetOutlookVersionString(LPSTR* ppszVer, BOOL* pf64Bit)
{
HRESULT hr = E_FAIL;
LPSTR pszTempPath = NULL;
LPSTR pszTempVer = NULL;
TCHAR pszaOutlookQualifiedComponents[][MAX_PATH] = {
TEXT("{1E77DE88-BCAB-4C37-B9E5-073AF52DFD7A}"), // Outlook 2010
TEXT("{24AAE126-0911-478F-A019-07B875EB9996}"), // Outlook 2007
TEXT("{BC174BAD-2F53-4855-A1D5-0D575C19B1EA}") // Outlook 2003
};
int nOutlookQualifiedComponents = _countof(pszaOutlookQualifiedComponents);
int i = 0;
DWORD dwValueBuf = 0;
UINT ret = 0;
*pf64Bit = FALSE;
for (i = 0; i < nOutlookQualifiedComponents; i++)
{
ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.x64.exe"),
(DWORD) INSTALLMODE_DEFAULT,
NULL,
&dwValueBuf);
if (ERROR_SUCCESS == ret) break;
}
if (ret != ERROR_SUCCESS)
{
ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.exe"),
(DWORD) INSTALLMODE_DEFAULT,
NULL,
&dwValueBuf);
}
else
{
*pf64Bit = TRUE;
}
if (ret == ERROR_SUCCESS)
{
dwValueBuf += 1;
pszTempPath = (LPSTR) malloc(dwValueBuf * sizeof(TCHAR));
if (pszTempPath != NULL)
{
if ((ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.exe"),
(DWORD) INSTALLMODE_EXISTING,
pszTempPath,
&dwValueBuf)) != ERROR_SUCCESS)
{
goto Error;
}
pszTempVer = (LPSTR) malloc(MAX_PATH * sizeof(TCHAR));
dwValueBuf = MAX_PATH;
if ((ret = MsiGetFileVersion(pszTempPath,
pszTempVer,
&dwValueBuf,
NULL,
NULL))!= ERROR_SUCCESS)
{
goto Error;
}
*ppszVer = pszTempVer;
pszTempVer = NULL;
hr = S_OK;
}
}
Error:
free(pszTempVer);
free(pszTempPath);
return hr;
}
Говнокод от САМОГО Билли... 21 век на дворе, а у нас в C++ коде goto Error написано (точнее - накакано).
Источник - http://msdn.microsoft.com/en-us/library/dd941331.aspx