- 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
TLine = record
X1, Y1, X2, Y2: smallint;
Attr: array [0 .. 7] of byte;
end;
{rail:
Attr[0]: Quality
Attr[1]: ********
||Weight of Station
||10 = Station; 11 = Big Station
Attr[2]: Count of passengers
Real count = Attr[2] * (Attr[1] and $3F) / 63;
Attr[3]: ****0100
||||
|||for Selected
||for "crossrail"
for MoveEndSel
===========================================
bridge:
Attr[0]: Quality
Attr[1]: ********
||
Z of ends
Attr[2]:
Attr[3]: ****1100
===========================================
3d-object:
Attr[0]: Number
Attr[1-2]: RandSeed
Attr[3]: ****1111
===========================================
Attr[4..7] reserved, but not used
}
Это я был вынужден написать себе такую памятку после попыток понять свой код, начатый на 3 курсе.
В будущем я учёл свои ошибки при написании http://govnokod.ru/5261
gegMOPO4 07.03.2011 13:56 # 0
TarasB 07.03.2011 14:39 # +1
Я с Турбо Паскаля начинал, поэтому и приучился по битам всякие флаги распихивать. Потом, после перехода на Дельфи, не сразу отучился.
gegMOPO4 07.03.2011 15:07 # 0
TarasB 07.03.2011 15:12 # 0
bugmenot 07.03.2011 17:33 # 0
TarasB 07.03.2011 17:53 # 0
И как тут множества помогут?
bugmenot 07.03.2011 18:38 # 0
а паскале с bitfields нормально не поработаешь
bugmenot 07.03.2011 18:41 # +1
байтоёбство
TarasB 07.03.2011 18:52 # 0
bugmenot 08.03.2011 01:55 # 0
TarasB 08.03.2011 02:06 # 0
g00d 07.03.2011 21:28 # +2
ctm 08.03.2011 21:50 # 0
кстати, для задачи, где подобных объектов может быть 50-100М, придется еще не так извращаться... ну или забить на 32-битную реализацию.