Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

C++自定义异常类

C++自定义异常类

1.C++程序中处理异常或者错误,可以使用异常机制,异常处理的结构为:try{//可能引发异常的代码}catch( type e){//异常处理}catch(…) //省略号代表可以接受任何类型的异常{//}C++抛出的异常可以int、doble、类等类型,抛出的异常要进行处理,否则会自动调用abort()函数终止程序。C++提供了了一些标准的异常类,exception类可以派生出bad_cast,runtime_error,bad_allo...
Java 8简明教程

Java 8简明教程

“Java并没有没落,人们很快就会发现这一点”欢迎阅读我编写的Java 8介绍。本教程将带领你一步一步地认识这门语言的新特性。通过简单明了的代码示例,你将会学习到如何使用默认接口方法,Lambda表达式,方法引用和重复注解。看完这篇教程后,你还将对最新推出的API有一定的了解,例如:流控制,函数式接口,map扩展和新的时间日期API等等。允许在接口中有默认方法实现Java 8 允许我们使用default关键字,为接口声明添加非抽象的...
Linux的信号处理和实际使用(结合Redis分析)

Linux的信号处理和实际使用(结合Redis分析)

最近比较多朋友问我常见的信号和一些Linux信号实际的应用。所以,我简单总结一下,让大家对信号有清晰的理解。我自己写的系统里面,我是直接参考redis的信号处理机制的。redis是这样处理信号的:如果系统支持 HAVE_BACKTRACK,即是:#if defined(__APPLE__) || defined(__linux__) || defined(__sun)#define HAVE_BACKTRACE 1#endif那么redis会用sigseg...
OpenGL绘制矢量路径的思路

OpenGL绘制矢量路径的思路

1. 引言软件方法绘制,如QT、Android(skia)都自带2D绘图引擎,支持矢量路径填充并且抗锯齿!如果使用OpenGL绘制矢量,对建模算法以及纹理都有要求,不同的建模算法决定了最终的视觉效果。OpenGL绘制路径,抗锯齿效果由纹理来实现。下面介绍两种不同效果的路径实现和绘制:2. 纯色圆角路径通过纹理方式实现抗锯齿单色路径绘制。建模算法非常简单:将一个polyline分解成一些列两点的线段,单独对每个线段建模,如下图0132和4576处贴两个半圆,...
Android上gl纹理资源路径的问题

Android上gl纹理资源路径的问题

问题描述:GLSurfaceView中通过纹理绘制图形,纹理长宽为2的幂次(128*64)。资源放在res/drawable文件夹下面。发现在hdpi手机上图形为白色,还有同事手机上是黑色。初步判断:可能原因是纹理丢失。。导致绘制图形采用默认颜色绘制:白色或者黑色,结果随机。为什么纹理丢失呢?我直接把问题归咎于奇葩的Android,感觉hdpi手机优先搜索drawable-hdpi文件夹,并没有搜索drawable目录??问题排查:步骤1:通过图片资源上传...
OpenGL中的FBO对象(附源码)

OpenGL中的FBO对象(附源码)

概要在OpenGL的渲染管线中,几何数据和纹理通过一系列变换和测试,最终被渲染成屏幕上的二维像素。那些用于存储颜色值和测试结果的二维数组的几何被称为帧缓冲区(frame buffer)。这些二维数组按用途划分,可分为颜色缓冲区(color buffer),深度缓冲区(depth buffer),模版缓冲区(stencil buffer)和累加缓冲区(accumulation buffer)。当我们创建了一个可供OpenGL绘制用的窗体后,窗体系统会为我们生...
关于OpenGL+GLSL深度贴图采样

关于OpenGL+GLSL深度贴图采样

在GLSL中,存在着sampler2D和sampler2DShadow两种2D贴图采样器。在对一个深度贴图(指内部格式为GL_DEPTH_COMPONENT或GL_DEPTH_STENCIL的贴图)进行采样时,可以使用前述两种2D贴图采样器其中的一种进行采样。对两种2D贴图采样器取舍,与贴图对比模式(Texture Comparison Modes)有关。OpenGL 4.2提供了两种贴图对比模式,分别为普通对比模式(GL_NONE)和引用到贴图对比模式(...
OpenGL ES 2D渲染性能

OpenGL ES 2D渲染性能

2D中最基本的是渲染一个图片,OpenGL接口中想到的有以下几种方式:1. glDrawPixels直接将图像数据写到颜色缓冲区中,不够灵活,而且移动设备端不支持。2. draw_texture_quadopengles1.0标准支持,1)将图像数据上传到OpenGL服务器显存,创建纹理对象;2)将顶点数据上传到OpenGL服务器显存,然后走OpenGL固定流水线最终显示到屏幕。这种传统做法缺点:每次绘制都需要将顶点上传到opengl显存,顶点上传需要CP...
OpenGL离线渲染和缓冲区对象

OpenGL离线渲染和缓冲区对象

理论OpenGLl离线渲染就是通过OpenGL将绘制结果渲染到显存中的一张图片上,通过gl接口函数可以从显存读取到内存中。基于OpenGL的离线渲染机制,可以快速实现一个渲染器:输入:图像,点,线。。。输出:图像实现方案从一般到特殊:1. 不支持FBO主要介绍PC上,移动设备如果不支持FBO要实现离线渲染那就实在没辙了。glDrawBuffer(GL_BACK); glReadBuffer(GL_BACK); 设置读写时后缓存区。 一般pc都支持双缓冲机制...
将OpenGL代码移植成OpenGL ES

将OpenGL代码移植成OpenGL ES

首先是一些基础概念和经验分享:1、OpenGL是一个跨平台的图形渲染标准2、OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。该API由Khronos集团定义推广,Khronos是一个图形软硬件行业协会,该协会主要关注图形和多媒体方面的开放标准。OpenGL ES 是从 OpenGL 裁剪定制而来的,去除了 glBegin/glEnd,四...
CMake并没有想象中好用

CMake并没有想象中好用

简单说,CMake可以自动生成各个平台的build(make)文件,从而达到编写一份build脚本就可以自动在各平台生成独自的工程文件。这似乎听起来很好,但是实际使用中会有各种恶心的问题。导致有的时候我宁愿自己重新搭建工程文件也不想用cmake。1、首先你要熟悉cmake才能知道为什么它没有成功的生成工程文件,单单一个xxx not found是无法帮助我们解决问题的。但是大多数时候我并不想学习cmake,我想要的仅仅是生成工程文件,然后运行。之后ide再...
<< 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 >>