- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
bool ParseConfig::TestLongInt(const std::wstring _data) const
{
std::wstring::size_type i=0;
bool isPositively=true;
unsigned long int scoreMinus=0;
std::wstring text;
std::wstring data;
if(_data.empty()) return false;
text=L"-0123456789";
for(i=0;i<_data.size();i++)
{
if(text.find(_data[i],0)==std::wstring::npos)
{
return false;
}
else
{
if(_data[i]==L'-') scoreMinus++;
}
}
if(scoreMinus==1)
{
isPositively=false;
if(_data[0]!=L'-') return false;
if(_data.size()==1)
return false;
else if(_data.size()>11)
return false;
data=_data.substr(1,_data.size()-1);
}
else if(scoreMinus>1)
{
return false;
}
else
{
if(_data.size()>10) return false;
data=_data;
}
if(data[0]>L'2')
{
return false;
}
else if(data[0]==L'2')
{
if(data[1]>L'1')
{
return false;
}
else if(data[1]==L'1')
{
if(data[2]>L'4')
{
return false;
}
else if(data[2]==L'4')
{
if(data[3]>L'7')
{
return false;
}
else if(data[3]==L'7')
{
if(data[4]>L'4')
{
return false;
}
else if(data[4]==L'4')
{
if(data[5]>L'8')
{
return false;
}
else if(data[5]==L'8')
{
if(data[6]>L'3')
{
return false;
}
else if(data[6]==L'3')
{
if(data[7]>L'6')
{
return false;
}
else if(data[7]==L'6')
{
istem 20.12.2010 11:23 # +3
TarasB 20.12.2010 11:38 # +1
Чел новичок в этом деле, да.
http://www.gamedev.ru/code/forum/?id=141823
FadedInto 20.12.2010 12:41 # +4
bugmenot 20.12.2010 13:03 # +5
"делаю такой анализатор для игры, чтобы можно было извлекать данные из конфигурационных файлов (.cfg)."
а ведь круто, ни у кого такого нет
"Анализатор будет рассчитан на текст UTF-16 Little Encoding."
sic, однако!
TarasB 20.12.2010 13:09 # −2
bugmenot 20.12.2010 13:18 # +1
Govnocoder#0xFF 20.12.2010 13:23 # 0
bugmenot 20.12.2010 13:30 # 0
хотя если бы были трудолюбивые китайцы -- возможно и нельзя было бы вражину сквозь херово пригнанные текстуры бетонной стены увидеть...
brainstorm 20.12.2010 14:53 # 0
и они как-то кодили, да. :-D
komprenda 20.12.2010 15:01 # −8
brainstorm 20.12.2010 15:08 # 0
komprenda 20.12.2010 15:10 # −9
brainstorm 20.12.2010 15:14 # +2
komprenda 20.12.2010 15:21 # −10
brainstorm 20.12.2010 15:31 # +4
зато мы знаем что ты тут вчера всем предлагал выебать тебя в жопу
komprenda 20.12.2010 15:39 # −8
TarasB 20.12.2010 15:30 # −1
brainstorm 20.12.2010 15:35 # +2
вообще как показатель - компы все мощнее, карты все круче а игры все медленнее и медленнее.
в шутерах правда есть мудаки дизайнеры уровней которые начинают переливающийся гламр туда хуярить вообще не думая о том что графика будет тормозить.
ща не оптимизирует никто :(
TarasB 20.12.2010 15:45 # 0
А вот то, что для сраного тетриса теперь надо качать ОГЛ 3.0 и точканет 4.0 - это да, бесит.
This is obvious 20.12.2010 17:30 # +2
bugmenot 20.12.2010 17:39 # 0
Анонимус 20.12.2010 23:52 # +3
кстати, современные игры и правда говно
купил движок
купил дизайнера с пошлым, заебавшим всех однообразным монстром в голове
и выпустил 1999123ю в этом году однообразную унылую говнострелялку, как две капли воды похожую на все остальные
толи дело игры на спеке
bugmenot 21.12.2010 00:00 # 0
что-то я видел, типа Caesar IV что-ли
> купил движок
ну я как бы еще раньше хотел посоветовать спиратить Havoc или Infinity, но сильно не уверен, что они сами по себе не кривые -)
TarasB 21.12.2010 10:15 # +2
Анонимус 21.12.2010 13:49 # 0
KomprendaTerrorSquad 21.12.2010 14:03 # +5
Блин, забыл разлогиниться из-под этого мутанта.
istem 21.12.2010 14:27 # 0
--
...А где монтажка???
guest 21.12.2010 14:32 # 0
inkanus-gray 21.12.2010 22:43 # 0
guest 21.12.2010 23:04 # 0
inkanus-gray 23.12.2010 00:14 # 0
Графика никакая, зато технологично!
bugmenot 23.12.2010 00:33 # 0
inkanus-gray 23.12.2010 01:17 # 0
А я ещё на parovoz.com фотки иногда смотрю. У каждой второй комментарий «Горизонт завален» на самом деле.
Oleg_quadro 20.12.2010 17:56 # +1
Но один чел сказал: "всегда выбирай трудный путь, на нём ты не встретишь конкурентов"
Анонимус 20.12.2010 23:53 # +2
Oleg_quadro 21.12.2010 00:05 # +2
А когда человек использует готовые либы, чтобы облегчить свой труд?
Анонимус 21.12.2010 00:13 # 0
Прочитайте главу "злые волшебники" из книги "программист прагматик". ))
absolut 21.12.2010 01:11 # 0
Анонимус 21.12.2010 03:28 # +4
Любая абстракция имеет дыры, и что бы не попасть в просак, нужно понимать хотя бы на 1-2 уровня ниже, что бы эти дыры чинить. Не обязательно конечно знать микрокод своего процессора, но знать работу используемых библиотек хотя бы в общих чертах все же надо.
примеры факапов, вызванных пренебрежением этого правила:
1) мне не нужно знать sql -- за меня ORM все сделает. В итоге запросы вешают сервер
2) не не нужно знать, как работают сети -- за меня мой RPC все сделает: в итоге на каждое действие 25 TCP коннектов, и все висит
и таких примеров тысячи
Govnocoder#0xFF 20.12.2010 13:08 # +2
TarasB 20.12.2010 13:09 # +1
Govnocoder#0xFF 20.12.2010 13:20 # −1
komprenda 20.12.2010 14:05 # −4
istem 20.12.2010 14:17 # +2
komprenda 20.12.2010 14:19 # −9
komprenda 20.12.2010 15:26 # −7
Govnocoder#0xFF 20.12.2010 15:46 # +1
komprenda 20.12.2010 15:47 # −8
xaionaro 21.12.2010 22:25 # +2
ningun 20.12.2010 23:12 # 0
Dummy00001 22.12.2010 17:42 # 0
как по мне, это было бы последним чем я забивал себе голову при написании парсера.
ningun 22.12.2010 19:09 # 0
Потому что происходят они — «всплывают хвосты», в те самые моменты, когда уже переключился на другой проект, а на этот подзабыл немного...
(2)Arbitrary-precision arithmetic — тоже вариант.
>>как по мне,
именно.
Просто разные упорядоченности критериев по приоритетам.
Например, так:
1. Надёжность;
2. Скорость;
3. Универсальность;
4 .Читабельность;
5. Кроссплатформенность.
Dummy00001 22.12.2010 19:21 # 0
> именно.
> Просто разные упорядоченности критериев по приоритетам. Например, так:
ты забыл номер 0 - парсер должен парсить :)
если пишешь большой кусок кода, то сначала сделать что бы он работал.
и читабельность к слову должна быть намного выше в списке. вероятность написания куска кода который работает и надежен и быстр, но не читабелен, близка к нулю.
ningun 22.12.2010 20:48 # 0
а что, бывают ещё критерии для неработоспособно кода?
>если пишешь большой кусок кода, то сначала сделать что бы он работал.
Разные подходы:
- «быстрые пальцы»;
- «задумчивые лица».
Читабельность понимаю как выработанный и устоявшийся стиль программирования.
>и читабельность к слову должна быть намного выше в списке.
для проектов, в которых разные куски кода, могут/будут сопровождать разные программисты - обязательно.
Одиночные проекты, дровишки, прошивки и т.п. - не настолько существенно.
>вероятность написания куска кода который работает и надежен и быстр, но не читабелен, близка к нулю.
есть код, который работает и надежен и быстр, и сразу не читабелен.
Любители «hacker code tricks» - обфускаторы во плоти.
Кстати говоря «не читабельность », это не статическое состояние кода,
эта мера необходимых ресурсов для понимания написанного кода.
guest 02.01.2011 01:50 # 0