D如何检查null

原文

enum canBeNull(T) = is(typeof({T t; t = null;}));
static assert(canBeNull!(Object));
static assert(!canBeNull!(int));

我这样,可重载opAssignopCmp.
我检查static if(is(typeof(null) : T))(可隐式转换为T),或用__traits(compiles, v is null)更好.

posted @ 2022-07-02 09:59  zjh6  阅读(16)  评论(0)    收藏  举报  来源