Я знаю, что в C++ вы можете создать экземпляр класса в стеке, какВозможно ли создать экземпляр класса в стеке?
MyClass mc = MyClass(8.2);
или на куче как
MyClass * mc = new MyClass(8.2);
Можете ли вы сделать то же самое в C#? Единственный способ, которым я когда-либо создавал класс в C#, - это new
.
https://blogs.msdn.microsoft.com/ericlippert/2009/04/27/the-stack-is-an-implementation-detail-part-one/ –
Вы можете получить «on-the-stack- как семантика "с C++/CLI. –
Это только семантика, объекты все еще живут на куче GC. Предназначен для спасения образца RAII. В значительной степени неудача, окончательно запутывающие программисты о том, когда использовать шляпу и заставить их писать очень неэффективный код, который слишком часто используется. –