Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
IsPrimitive Property

Type::IsPrimitive Property

Gets a value indicating whether the Type is one of the primitive types.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public:
virtual property bool IsPrimitive {
	bool get () sealed;
}

Property Value

Type: System::Boolean
true if the Type is one of the primitive types; otherwise, false.

Implements

_Type::IsPrimitive

The primitive types are Boolean, Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64, IntPtr, UIntPtr, Char, Double, and Single.

If the current Type represents a generic type, or a type parameter in the definition of a generic type or generic method, this property always returns false.

The following example demonstrates the IsContextful, IsMarshalByRef, and IsPrimitive properties of the Type class. It checks whether the given type can be hosted in the context, whether it can be marshaled by reference, and whether the type is a primitive data type.

using namespace System;
using namespace System::Runtime::Remoting::Contexts;

public ref class ContextBoundClass: public ContextBoundObject
{
   public:
      String^ Value;
};

public ref class Example
{
public:
   void Demo()
   {
      // Determine whether the types can be hosted in a Context.
      Console::WriteLine("The IsContextful property for the {0} type is {1}.",
                         Example::typeid->Name, Example::typeid->IsContextful);
      Console::WriteLine("The IsContextful property for the {0} type is {1}.",
                         ContextBoundClass::typeid->Name, ContextBoundClass::typeid->IsContextful);

      // Determine whether the types are marshalled by reference.
      Console::WriteLine("The IsMarshalByRef property of {0} is {1}.",
                         Example::typeid->Name, Example::typeid->IsMarshalByRef );
      Console::WriteLine("The IsMarshalByRef property of {0} is {1}.",
                         ContextBoundClass::typeid->Name, ContextBoundClass::typeid->IsMarshalByRef );

      // Determine whether the types are primitive datatypes.
      Console::WriteLine("{0} is a primitive data type: {1}.",
                         int::typeid->Name, int::typeid->IsPrimitive );
      Console::WriteLine("{0} is a primitive data type: {1}.",
                         String::typeid->Name, String::typeid->IsPrimitive );
   }
};

int main()
{
   Example^ ex = gcnew Example;
   ex->Demo();
}
// The example displays the following output: 
//    The IsContextful property for the Example type is False. 
//    The IsContextful property for the ContextBoundClass type is True. 
//    The IsMarshalByRef property of Example is False. 
//    The IsMarshalByRef property of ContextBoundClass is True. 
//    Int32 is a primitive data type: True. 
//    String is a primitive data type: False.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8

Portable Class Library

Supported in: Portable Class Library
Show:
© 2015 Microsoft