<型名 T> 独包 {
    独针<T>h;//包装一个
     检查(){
        (h==空针) 无效实参("无效");
        (h->错误) 无效实参(h->错误串);
    }//这是h内部有`错误`.
:
    T()=;
    T( T&)=;
    T&符号=( T&)=;
    //其余皆删
    T(T&&)=默认;
    T&符号=(T&&)=默认;
    //只能移动
    T(T*o):h(o){}//保存指针
    符号 (){ h!=空针&&!h->错误;}
    T*符号()(){();}
    //重载(),就是取(),多了检查步骤
    T*(){检查(); h.();}//取原指针
    //多加了一步检查
     符号==( T&o){ o.h==h;}
     符号!=( T&o){ o.h!=h;}
    T*符号->(){检查(); h.();}
    //重载->,这里也多检查了一步
};
//只多做一步,类似这里的`检查`,但就得重新写类.
内联 独包<环境>安连接( *ip, 端口){
     连接(ip,端口);
}//原来直接返回(环境*),现在用`独针<环境>`了.

 (){
     c=安连接(ip,端口);
    回复 r=命令(c(),"取标识");
    //这个命令也得用相应的安全版本.
    打印(r->);
}//通过RAII保证安全,重载指针访问符保证方便,访问指针时做检查保证不出错,避免外部检查.还可加额外控制策略如写日志.