Typ

typeof , také známý jako typeOf , a TypeOf je operátor poskytovaný některými programovacími jazyky k určení datového typu proměnné. To je užitečné pro psaní programů, které musí přijímat více datových typů, aniž by specifikovaly samotný typ.

V jazycích, které podporují polymorfismus a konverzi typů , může mít dvě implementace. V některých jazycích, jako je Visual Basic [1] , vrací operátor typeof dynamický typ objektu. V takových jazycích přijímá tento příkaz informace za běhu .

V jiných jazycích, jako je C# [2] nebo D [3] a do určité míry v C (jako součást nestandardního rozšíření), [4] [5] vrací operátor typeof statický typ operandu. Tyto jazyky mohou mít jiné operátory pro získávání informací za běhu , například typeid .

Příklady

V nestandardním (GNU) rozšíření programovacího jazyka C lze typeof použít k definování makra max:

# define max(a,b) ({ typeof (a) _a = (a); typeof (b) _b = (b); _a > _b ? _a : _b; })

V C# :

// Vrátí, zda je objekt celočíselný public static bool IsInteger ( object o ) { return ( o . GetType () == typeof ( int ) ); }

V JavaScriptu :

function isNumber ( n ) { return ( typeof n === 'číslo' ); }

V TypeScriptu : [6]

function ( param : typeof existujiciObject ) { ... } let newObject : typeof existujícíObject ;

Viz také

Poznámky

  1. https://msdn.microsoft.com/en-us/library/0ec5kw18(VS.80).aspx Archivováno 28. listopadu 2016 na Wayback Machine „ TypeOf Operator (Visual Basic)“ v MSDN
  2. https://msdn.microsoft.com/en-us/library/58918ffs(VS.80).aspx Archivováno 10. září 2016 na Wayback Machine „typeof (C#)“ v MSDN
  3. Deklarace - D Programming Language 1.0 - Digital Mars . Získáno 27. dubna 2022. Archivováno z originálu 7. dubna 2022.
  4. https://gcc.gnu.org/onlinedocs/gcc/Typeof.html Archivováno 9. května 2022 na Wayback Machine " Typeof " v použití kolekce GNU Compiler Collection
  5. Meneide, JeanHeyd Not-So-Magic - typeof(…) v C | r2 . www.open-std.org (7. března 2021). Získáno 2. prosince 2021. Archivováno z originálu dne 19. dubna 2021.
  6. Použití `typeof` k odvození  typu . Naučte se TypeScript . Získáno 28. ledna 2022. Archivováno z originálu dne 12. dubna 2022.