OGLplus教程学习笔记(2)

最后再来谈谈我觉得这段代码一个非常出彩的地方。就是Example::Display方法中的gl.Clear().ColorBuffer().DepthBuffer()一句。这一句fluent interface风格的代码中的三次函数调用创建了三个oglplus::context::ClrBits的对象,Clear()创建一个空对象为了接下来的调用提供interface,后面依然依次创建ClrBIts型别的对象,并为后面的调用提供接口。创建的对象都是临时对象,离开代码段即进行对象的析构,而在ClrBits型别的析构函数中调用的则是glClear方法。这是使用RAII对象的良好实践。

好了,Outline先写到这里,modern C++设计的旅程刚刚开始。

OGLplus 的详细介绍请点这里
OGLplus 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e3e14c96f32a8ee750ec83a35bf988b1.html