AttrNode::has the qualification of a name maketo explicitly call AttrNode::make, and not any other function called make.
In this case, it is redundant; AttrNode().make()will do the same: create a temporary object, call a function, and then destroy the object. Since this is a static function, you usually call it, without creating an object AttrNode::make().
, , , - . , .