- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
BOOL Space::SetShattle(Shattle* sh)
{
if(!sh)
return 1;
if(!dynamic_cast<Shattle*>(sh) )
return 2;
if(shattle)
delete shattle;
shattle=sh;
return 0;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 2
+21
BOOL Space::SetShattle(Shattle* sh)
{
if(!sh)
return 1;
if(!dynamic_cast<Shattle*>(sh) )
return 2;
if(shattle)
delete shattle;
shattle=sh;
return 0;
}
Как освоить и закрепить знания о приведении типов? Скажем, вот так...
+10
{//НАЧАЛО ВРЕМЕННОГО БЛОКА ПОЛУЧЕНИЯ КОДА
try
{
int q=quan-pos;
char* temp=new char[q+1];//Временный буфер под код.
for(int i=0;i<q;temp[i]=buf_temp[pos+(i++)]);
//В цикле копируем в этот буфер символы кода.
temp[q]=0;//Завершаем строку буфера нулём.
code=atoi(temp);
delete[]temp;
}
catch(...)
{
//Проверка на вшивость, учитывая возможный размер кода, излишня, но всё же не помешает, поскольку не тормозит систему.
code=0;
}
}//КОНЕЦ ВРЕМЕННОГО БЛОКА ПОЛУЧЕНИЯ КОДА
Когда-то давно (школопериод) выпало изучать обмен данными по сети на С++.
В задании выше - кусок функции ListenSockets(), которая принимала по сети форматированную строку и парсила.
В те годы про strtok() я еще не слыхал...