【C#】空合并运算符 ??

来源:互联网 发布:淘宝策划做什么工作 编辑:程序博客网 时间:2024/04/20 10:43

偶然 看到这样的一个 单例

//                  _ooOoo_//                 o8888888o//                 88" . "88//                 (| -_- |)//                 O\  =  /O//              ____/`---'\____//            .'  \\|     |//  `.//          /  \\|||  :  |||//  \//          /  _||||| -:- |||||-  \//          |   | \\\  -  /// |   |//          | \_|  ''\---/''  |   |//          \  .-\__  `-`  ___/-. ///        ___`. .'  /--.--\  `. . __//     ."" '<  `.___\_<|>_/___.'  >'"".//    | | :  `- \`.;`\ _ /`;.`/ - ` : | |//    \  \ `-.   \_ __\ /__ _/   .-` /  ///=====`-.____`-.___\_____/___.-`____.-'======//                  `=---='////^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^//          佛祖保佑       永无Bug//          快加工资       不改需求//



   private static ResourceMgr _inst;    public static ResourceMgr Inst    {        get { return _inst = _inst ?? new ResourceMgr(); }    }

后发现  ??就是判断??左边表达式是否为null,如是null则取右边表达式的值,否则就取左边表达式的值

比如  

 a??b 当a为null时则返回b,a不为null时则返回a本身。