오늘은 내가 재사용 가능한 프레임 워크를 만들려고, 내가이 일을 아무 문제가 없었다 ... 나는 새 파일 "Game.cs"클래스 게임을 포함을 만들어 :Form은 포인터처럼 작동합니까?
class Game
{
Form Form;
public Game(Form Form, int Width, int Height)
{
//Set Form
this.Form = Form;
this.Form.MaximizeBox = false;
this.Form.FormBorderStyle = FormBorderStyle.Fixed3D;
this.Form.Size = new Size(Width, Height);
}
}
그럼 난에이 파일을 추가 으로 VisualStudio와 그것을 사용하는 새로운 형태의 프로젝트, Framework_Demo
는 포함이 :
namespace Framework_Demo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//Here I created a new Object game using class Game
Game game = new Game(this, 600, 600);
}
}
}
아마이 간단하고 내 질문은 폐기 될 수 있지만 수있는 이유는 Framework_Demo
그의 양식을 나타납니다뿐만 아니라 내가 설정 한 속성 디버깅 할 때Game
클래스의 costructor에서? 문제는 아니지만 this.Form = Form
를 설정할 때 어떤 일이 발생하는지 알고 싶습니다. 정말 포인터처럼 작동합니까? 누군가이 행동을 나에게 설명 할 수 있습니까? 고맙습니다!
예, '양식'은 참조 유형입니다. 나는'Form' 인자를 취하는'Game' 클래스를 갖는 것이 아주 좋은 디자인은 아니지만 추가 할 것입니다. 당신의 UI는이'Game' 클래스와 매우 밀접하게 연결될 것입니다, 당신은'Form' public에서 모든 것을 만들어서 조작 할 수있게 될 것이고,'Game' 클래스는 거의 확실하게 끝날 것입니다 거대하고 너무 많이하고있다. –