想了解一下,在C#简单三层中的private int? 或者string? 的实际意义?

C#简单三层中的private int? 或者string? 的实际意义 为什么要加个问号,加了问号后的好处是什么?还有在定义方法时:public static DataTable GetEmployeeByCode(string code, string pwd) 为什么我没加static之前就报错,加了static后就没错了。为什么要加static?加static的好处是什么?各位大侠帮忙解释哈。

隔江千里
浏览 353回答 3
3回答

慕桂英4014372

int? 表示“可空值类型”。在.NET中,值类型是存放在内存的栈上的,不能为“NULL”值。在加了问号后就允许值类型为NULL值,这是为了兼容数据库中允许为空的值类型字段来设计的。String? 没有任何意义,因为string本身就是引用类型,引用类型是存放在托管堆上的,所以允许有NULL值。没必要在类型后面加个问号来多此一举。 成员声明中的static关键字表示该成员为静态成员,能够直接用类名调用出来,不需要实例化对象。需要注意的是,在同一个类中,静态成员不能调用实例成员,但是实例成员能够调用静态成员。 如果你还有疑惑的话建议你去微软的MSDN里面查查,里面讲得很清楚

holdtom

int?和sring? 加了问号代表变量可以为空,也就是NULL
打开App,查看更多内容
随时随地看视频慕课网APP