一,unsafe是什么?
答:unsafe关键词,开启不安全代码(unsafe code)开发模式。在不安全模式下,我们可以直接操作内存,这样就可以使用指针了。
二,左链接和内链接是什么?
答:左表(table1)全部保留,右表(table2)关联不上用null表示。
SELECT * FROM table1 LEFT JOIN table2 ON table1.a=table2.b
保留两个表共有的部分。
SELECT * FROM table1 inner JOIN table2 ON table1.a=table2.b。
三,如何给 int类型赋null。且不报错?
单问号—用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0!
双问号—用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过!
int ?为可空类型,默认值可以是 null
int 默认值是 0
int? 是通过 int 装箱为引用类型实现
四,const和readonly有什么区别?
都可以标识一个常量。主要有以下区别:
1 、初始化位置不同。 const 必须在声明的同时赋值; readonly 即可以在声明处赋值 ;
2 、修饰对象不同。 const 即可以修饰类的字段,也可以修饰局部变量; readonly 只能修饰类的字段
3 、 const 是编译时常量,在编译时确定该值; readonly 是运行时常量,在运行时确定该值。
4 、 const 默认是静态的;而 readonly 如果设置成静态需要显示声明
5 、修饰引用类型时不同, const 只能修饰 string 或值为 null 的其他引用类型; readonly 可以是任何类型