我最近开始用C#编写Unity(游戏引擎)开发.我注意到与C++不同; C#要求我在使用其成员函数或变量之前在堆上实例化一个对象.与C++一样,我可以声明一个对象并从声明名称中调用任何函数.
C++示例:
#include <iostream>
using namespace std;
class SampleClass
{
void PrintFunc()
{
cout<<"Hello World"<<endl;
}
}
int main()
{
SampleClass objectC; //Object declaration
objectC.PrintFunc(); //Use of function without instantiation
//The above code will print'Hello World'
}
Run Code Online (Sandbox Code Playgroud)
C#示例:
using System
namespace ConsoleProject2
{
class MainClass
{
class SampleClass
{
Void PrintFunc()
{
Console.WriteLine("Hello World");
}
}
public static void Main (string[] args)
{
SampleClass objectC = new SampleClass();
//Must instantiate before accessing member functions
objectC.PrintFunc(); //Prints out 'Hello World' …Run Code Online (Sandbox Code Playgroud)