• Saves Valuable Time
  • Trusted Accuracy since 2004
  • 15-Day Money-Back Guarantee

C++ Equivalent to the C# 'is' and 'typeof' Operators

There is no direct equivalent in C++ to the C# 'is' operator, but you can replicate the behavior by testing the result of a 'dynamic_cast':

C# C++
bool b = f is Foo; bool b = dynamic_cast<Foo*>(f) != nullptr;

C++ 'typeid' is only equivalent to C# 'typeof' for template type parameters:

C# C++
private void method<T>()
    Type t = typeof(T);
template<typename T>
void method()
    std::type_info t = typeid(T);

Use C# to C++ Converter to convert from C# to C++.     

Additional resource: C++ and C# Equivalents

Copyright © 2004 – 2021 Tangible Software Solutions, Inc.