typeof , más néven typeOf , és a TypeOf egy operátor , amelyet egyes programozási nyelvek biztosítanak a változó adattípusának meghatározására . Ez olyan programok írásakor hasznos, amelyeknek több adattípust is el kell fogadniuk anélkül, hogy magát a típust megadnák.
Azokban a nyelvekben, amelyek támogatják a polimorfizmust és a típuskonverziót , két megvalósítása lehet. Egyes nyelveken, mint például a Visual Basic [1] , a typeof operátor egy objektum dinamikus típusát adja vissza. Az ilyen nyelveken ez az utasítás futás közben kap információkat .
Más nyelvekben, mint például a C# [2] vagy a D [3] , és bizonyos mértékig a C nyelvben (nem szabványos kiterjesztés részeként), [4] [5] a typeof operátor az operandus statikus típusát adja vissza. Ezeknek a nyelveknek lehetnek más operátorai is az információszerzéshez futás közben , például a typeid .
A C programozási nyelv nem szabványos (GNU) kiterjesztésében a typeof használható a maximális makró meghatározására:
# definiálja a max(a,b) értéket ({ (a) típusa _a = (a); (b) típusa _b = (b); _a > _b ? _a : _b; })C # nyelven :
// Azt adja eredményül, hogy egy objektum egész szám public static bool IsInteger ( object o ) { return ( o . GetType () == typeof ( int ) ); }JavaScriptben : _
function isNumber ( n ) { return ( typeof n === 'szám' ); } function ( param : létező objektum típusa ) { ... } legyen newObject : létezőObject típusa ;