ClassStaticMethods
This example demonstrates how class static methods are ported to C++. Public, protected and private static methods preserve their accessibility level. Internal static methods become protected.
Additional command-line options passed to CsToCppPorter: none.
Source C# Code
namespace MembersPorting
{
public class ClassStaticMethods
{
public static void PublicMethod()
{
}
internal static void InternalMethod()
{
}
protected static void ProtectedMethod()
{
}
private static void PrivateMethod()
{
}
}
}
Ported Code
C++ Header
#pragma once
#include <system/object.h>
namespace MembersPorting {
class ClassStaticMethods : public System::Object
{
typedef ClassStaticMethods ThisType;
typedef System::Object BaseType;
typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
RTTI_INFO_DECL();
public:
static void PublicMethod();
protected:
static void InternalMethod();
static void ProtectedMethod();
private:
static void PrivateMethod();
};
} // namespace MembersPorting
C++ Source Code
#include "ClassStaticMethods.h"
namespace MembersPorting {
RTTI_INFO_IMPL_HASH(3437933940u, ::MembersPorting::ClassStaticMethods, ThisTypeBaseTypesInfo);
void ClassStaticMethods::PublicMethod()
{
}
void ClassStaticMethods::InternalMethod()
{
}
void ClassStaticMethods::ProtectedMethod()
{
}
void ClassStaticMethods::PrivateMethod()
{
}
} // namespace MembersPorting