我有一個如下的結構。我有幾個問題在C中struct的奇怪行爲#
問題1:
struct MyStruct
{
public MyStruct(int a)
{
this.a = a;
this.b = 10;
}
public int a;
public int b;
}
當我刪除this.b從MYSTRUCT constuctor它會給我一個錯誤「字段必須完全控制被返回給調用者之前分配」。但在課堂上的情況下,它不會發生
Problem2:
struct MyStruct
{
//public MyStruct(int a)
//{
// this.a = a;
// this.b = 10;
//}
//int asd;
//public int MyProperty { get; set; }
public void getImplemen()
{
Console.WriteLine("azsdfa");
}
public int a;
public int b;
}
static void Main(string[] args)
{
MyStruct myStruct ;
myStruct.a = 15;//when I comment this it will give an error
myStruct.b = 15; //when I comment this it will give an error
myStruct.getImplemen();
}
當我改變MyStruct myStruct
到MyStruct myStruct = new MyStruct();
它工作正常。
爲什麼這麼說?
這是結構如何工作。你應該堅持上課,直到你明白結構是如何工作的,以及你爲什麼要使用結構。誠實,無故使用'struct'會給你帶來痛苦。 – Blorgbeard
以後每個問題請問一個問題。 – Blorgbeard
是的Blorgbeard,我會盡力做你對未來問卷調查的建議:) –