blob: 2e42639f9a987498caf7fcc220ec6813bc2c9dcd [file] [log] [blame]
PreventInsert()
===============
FUNKTION
--------
::
int PreventInsert(object ob);
DEFINIERT IN
------------
::
/std/container/restrictions.c
ARGUMENTE
---------
::
ob
Das Objekt, das in den Behaelter eingefuegt werden soll.
BESCHREIBUNG
------------
::
Mit dieser Funktion kann ein Behaelter pruefen, ob er das Objekt ob
aufnehmen moechte oder nicht.
RUeCKGABEWERT
-------------
::
0, wenn das Objekt aufgenommen werden kann; ein Wert groesser als 0
zeigt an, dass das Objekt nicht aufgenommen werden soll.
BEMERKUNGEN
-----------
::
Wenn ob mit dem Flag M_NOCHECK bewegt wird, wird PreventInsert() zwar
aufgerufen, das Objekt wird jedoch auf jeden Fall in den Behaelter
bewegt, unabhaengig vom Rueckgabewert!
BEISPIELE
---------
::
Um zu verhindern, dass man Geld in einen Behaelter stecken kann, sollte
man wie folgt vorgehen:
varargs int PreventInsert(object ob)
{
// Wenn es Geld ist, erheben wir sofort Einspruch
if (ob->id("geld"))
return 1;
// Ansonsten koennte ein ererbtes Objekt noch Einspruch erheben!
else
return ::PreventInsert(ob);
}
SIEHE AUCH
----------
::
PreventLeave(), NotifyInsert(), NotifyLeave(), MayAddObject(),
PreventInsertLiving(), PreventLeaveLiving(), NotifyMove(),
PreventMove(), MayAddWeight(), move(), /std/container/restrictions.c
Last modified: Sat Dec 18 02:00:00 1999 by Tiamak