Объявите класс или структуру внутри метода В С# возможно ли объявить класс или структуру внутри метода, как в C++? например C++: void Method() { class NewClass { } newClassObject; } Я пытался, но это не позволило мне сделать это. Ответ 1 Вы можете создать анонимный тип, например, так: var x = new { x = 10, y = 20 }; И получите (анонимный) тип x с помощью: x.getClass(); но кроме этого: нет. Ответ 2 Да, можно объявить class внутри a class, и они называются inner classes public class Foo { public class Bar { } } и как вы можете создать экземпляр Foo foo = new Foo(); Foo.Bar bar = new Foo.Bar(); И в рамках метода вы можете создать объект anonymous type void Fn() { var anonymous= new { Name="name" , ID=2 }; Console.WriteLine(anonymous.Name+" "+anonymous.ID); } Ответ 3 Вы можете объявить их внутри класса , поскольку ваш вопрос задается, но не внутри метода, как указано в заголовке вопроса. Что-то вроде: public class MyClass { public class MyClassAgain { } public struct MyStruct { } }
Ответ 1 Вы можете создать анонимный тип, например, так: var x = new { x = 10, y = 20 }; И получите (анонимный) тип x с помощью: x.getClass(); но кроме этого: нет.
Ответ 2 Да, можно объявить class внутри a class, и они называются inner classes public class Foo { public class Bar { } } и как вы можете создать экземпляр Foo foo = new Foo(); Foo.Bar bar = new Foo.Bar(); И в рамках метода вы можете создать объект anonymous type void Fn() { var anonymous= new { Name="name" , ID=2 }; Console.WriteLine(anonymous.Name+" "+anonymous.ID); }
Ответ 3 Вы можете объявить их внутри класса , поскольку ваш вопрос задается, но не внутри метода, как указано в заголовке вопроса. Что-то вроде: public class MyClass { public class MyClassAgain { } public struct MyStruct { } }