有空研究一下vector的insert操作的效率(C++)

参考:http://stackoverflow.com/questions/15009442/c-push-back-vs-insert-vs-emplace

有时候会使用std::vector<char>作为buffer,很好用,但是经常担心insert的效率,通过参考页看出insert的效率貌似是最高的了。但是注意到insert的时候并不知道插入数据的总长度,操作时会先获取总长度,需要检查这个获取长度的操作是否快。如果不快,如何能从外部直接传入插入数据的长度呢?  如果有人已经有结论了可以在评论里交流。

Windows上Opengl开发UI遇到的两个坑

一、GLEW初始化后并不支持新版的opengl函数。 原因是piexlFormart选择了支持向BitMap绘制,这样会使当前opengl环境只支持OpenGL 1.1。

顺便记录一下GLEW使用的几个注意点:

1、头文件要在最前引用 不要在其前边引用gl.h文件 会导致错误。

2、初始化要在wglCreateContext   MakeCurrent之后初始化。并检查返回值是否是 GLEW_OK

3、支持的opengl版本判断使用if(GL_VERSION_x_x) {} (GL_VERSION_4_0)来判断

 

 

二、Opengl可以直接向DIB的DC(设备无关)上绘制,但透明度始终为0.导致updateLayeredWindows时将产生一种特殊的混合效果。(重点:透明度为零,其他颜色数据不为0时 update效果不是纯透明)这将导致误会,实际上只是没有透明度数据引起的。【注:这里的误会是指GDI+函数DrawRectangle  填充色为255时也会引起此效果,设置为254即可,这两个机制不知是否相同,有时间的同学可以试试 然后结果给大家分享一下】