я что-то тоже из темы выпадаю

local somevar:TType = new TType
somevar это же указатель на кусок памяти
local someint% = 1
someint это уже обьект
к примеру :
type TType
field test% = 1
end type
local sint% = 1
local stype:TType = new TType
debuglog "sint"
debuglog sint
i1(sint)
debuglog sint
i2(sint)
debuglog sint
debuglog "stype"
debuglog stype.test
t1(stype)
debuglog stype.test
t2(stype)
debuglog stype.test
function i1(i%)
i = 2
end function
function i2(i% var)
i = 3
end function
function t1(t:ttype)
t.test = 2
end function
function t2(t:ttype var)
t = new ttype 'вот тут мы подмениваем именно указатель !
t.test = 3
end function
в итоге в дебаге должны получить
потому что int копируется в новое значение
а stype это и так указатель
так же мои мысли потверждаются кодом : (файл blitz_object.h)

#ifndef BLITZ_OBJECT_H
#define BLITZ_OBJECT_H
#include "blitz_types.h"
#ifdef __cplusplus
extern "C"{
#endif
#define BBNULL (&bbNullObject)
struct BBClass{
//extends BBGCPool
BBClass* super;
void (*free)( BBObject *o );
BBDebugScope*debug_scope;
int instance_size;
void (*ctor)( BBObject *o );
void (*dtor)( BBObject *o );
BBString* (*ToString)( BBObject *x );
int (*Compare)( BBObject *x,BBObject *y );
BBObject* (*SendMessage)( BBObject *m,BBObject *s );
void (*_reserved1_)();
void (*_reserved2_)();
void (*_reserved3_)();
void* vfns[32];
};
struct BBObject{
//extends BBGCMem
BBClass* clas;
int refs;
};
extern BBClass bbObjectClass;
extern BBObject bbNullObject;
BBObject* bbObjectNew( BBClass *t );
void bbObjectFree( BBObject *o );
void bbObjectCtor( BBObject *o );
void bbObjectDtor( BBObject *o );
BBString* bbObjectToString( BBObject *o );
int bbObjectCompare( BBObject *x,BBObject *y );
BBObject* bbObjectSendMessage( BBObject *m,BBObject *s );
void bbObjectReserved();
BBObject* bbObjectDowncast( BBObject *o,BBClass *t );
void bbObjectRetain( BBObject *o );
void bbObjectRelease( BBObject *o );
void bbObjectRegisterType( BBClass *clas );
BBClass** bbObjectRegisteredTypes( int *count );
#ifdef __cplusplus
}
#endif
#endif
все функции работают не с обьектами, а с указателями на них
что собственно и логично
можно конечно получать указатель на переменную,
но я написал на blitzmaxе больше 700 кб кода и мне редко когда такое нужно было
drunnik
в итоге в список не получится поместить обьект Object
полностью, как я понимаю
добавляя Object в список ты и так добавляешь туда его ссылку
если тебе нужны простые указатели типа Int
пользуйся командами : HandleFromObject и прочими