- 浏览: 22757 次
- 性别:
- 来自: 北京
最新评论
文章列表
assert宏的原型定义在assert.h中,其作用是如果它的条件返回错误,则终止程序执行.
原型定义:
#include "assert.h"
void assert( int expression );
assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。
请看下面的程序清单badptr.c:
#include
#include
#include
int main( void )
{
...
一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题。
线程安全问题都是由全局变量及静态变量引起的。
若每个线程中对全局变量、静态变量只有读操作,而无写操作,一般来说,这个全局变量是线程安全的;若有多个线程同时执行写操作,一般都需要考虑线程同步,否则就可能影响线程安全。
类要成为线程安全的,首先必须在单线程环境中有正确的行为。如果一个类实现正确(这是说它符合规格说明的另一种方式),那么没有一种对这个类的对象的操作序列(读或者写公共字段以及调用公共方法)可以让对象处于无效状态,观察到对象处于无效 ...
详细描述
QTimer类提供了定时器信号和单触发定时器。
它在内部使用定时器事件来提供更通用的定时器。QTimer很容易使用:创建一个QTimer,使用start()来开始并且把它的timeout()连接到适当的槽。当这段时间过去了,它将会发射timeou ...
发现脑子不好使,之前看的东西一个月之后也就忘得差不多了。智商有限,只好依靠记录了。
QObject中有一个int QObject::startTimer ( int interval )方法,时间间隔单位为毫秒。
例如startTimer(1000);即1秒后将触发timeEvent事件,在类中需重载timerEvent(QTimerEvent *)方法,触发事件后执行该方法。
就是这么滴简单,害我看了那么久~唉唉唉唉
1.顶点vertex shader和fragment shader,代码放在HTML的<script>标签中,使用类型:x-shader/x-vertex和x-shader/x-fragment;
2.在initGL函数中初始化webGL上下文;
3.使用getShader和initShaders函数将着色器载入到webGL的program对象中;
4.定义mvMatrix(模型视图矩阵)和pMatrix(投影矩阵),并使用setMatrixUniform函数将它们从Javascript推送到webGL中,也就是显卡段,使得着色器可以调用它们;
5.使用initBuffers ...
闲了半个多月,突然老师让学个东西,一时间过于兴奋。今天一大早起床,花了半天的时间把W3CSchool的JavaScript文档看完了。下午学了HTML的新特性,晚上又看了点儿canvas的东西,现在感觉有些憋闷,这时候应该找人出去溜达才对。有点想念在BJUT晚上去麦当劳的情景了。
总的来说,今天是充实的,没咋荒废。明天继续Canvas吧!!回头总结一下。
dynamic_cast
dynamic_cast can be used only with pointers and references to objects. Its purpose is to ensure that the result of the type conversion is a valid complete object of the requested class. Therefore, dynamic_cast is always successful when we cast a class to one of its base classes:
static_ ...
stringstream allows a string-based object to be treated as a stream. This way we can perform extraction or insertion operationgs from/to strings, which is especially useful to convert strings to numerical values and vice versa.
e.g.
string mystr("1024");
int myint;
stringstream(mystr)>&g ...
src/ java原代码存放目录
gen/ 自动生成目录
gen 目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。 这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的资源,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了各种资源的id,通过R.java,应用可以很方便地找到对应资源。
res/ 资源(Resource)目录
在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。
a ...
今天RP暴差,导入个android工程错误不断,总结一下。
(1).unable to get system library for the project
根据网上的说法,是SDK不匹配,导进来的工程平台版本是2.3.3,对应API level是10,不幸我这里恰好没有。启动SDK manager下载,那叫一个慢啊,我一度以为电脑是不是死机了。只好离线安装,下载android-2.3.3_r01-linux.zip,解压缩后放到sdk的platforms文件夹下。之后配置一下。
(2)把导入的android的工程的project.properties用default.properties覆盖了 ...
当我们从别处引入android工程时,会出现 unable to get system library for the project 的提示。这是由于sdk版本不兼容导致的。
web.xml注册filter:
<filter>
<filter-name>helloFilter</filter-name>
<filter-class>cn.buaa.javaweb.HelloFilter</filter-class>
<init-param>
<param-name>name</param-name>
<param-value>value</param-value>
</init-param>
...
本次作业主要是cookie的应用,要求显示最新浏览过的三本书的名称。
具体做法是,在浏览器端保存cookie,当cookies数组中元素等于3时,有两种情况:
(1)当前浏览的书名已经在浏览器端cookie中存在,解决方法是删除旧的cookie,即setMaxAge(0),并发送当前cookie给浏览器端。
(2)当前浏览的书名在浏览器端cookie中不存在,解决方法是删除第一个cookie,并将当前的cookie发送给浏览器端。
作业简化了一些过程,所以考虑不算全面,主要有:
(1)假设了所有cookie名都是以Book-Cookie-为前缀,而实际应用的时候,可能有很多cookie,严谨地 ...
右击项目,Properties->Java Bulid Path->Libraries->Add Library->Sever Rutime
1、运行模拟器并成功开机进入待机界面
2、点击PC开始菜单里面的“运行”输入cmd
3.进入android SDK 的platform_tools.(网上提供的方法多数在tools文件下,跟我这个不太一样~)
4.adb install xxx.apk(完整路径,可以直接把包拖到命令行中。)