C#中结构体是为了解决什么情况的问题?与class有哪些重要的区别?