似水流年

--记录我的点滴

Subscribe to RSS feed

下雪了,立交桥上大悲剧,好多车都在打滑,不得已人们下来推车走。倒是有辆三轮,无视下雪路滑,一路狂飙,快速通关,哈哈,不知道那些推车的人看了是什么感受

又到半夜了

呃,今天貌似没有什么事情,无非就是逗逗小外甥。
爸妈都回老家了,我没有回去,实在是不想回村里,过年的时候也许能够掩盖一些平时为了一点鸡毛蒜皮的小事就吵架的痕迹吧,不过想起来还是相当不爽。以前还回去看一看同学,现在也懒得回了,是不是因为我不擅长交际的原因?
妈妈今天生日,祝她生日快乐!

现在翻墙貌似已经不是什么问题了

最近翻墙看的比较集中了一些,基本上没什么问题了,以后就可以多出来转转了。
注册了非死不可,不过也没有同学,没意思。前一段时间,好像是因为google要退出中国的时候,曾经对国内的网络环境失望透顶,于是把
人人网注销了,但是后来实在是无聊,看不到同学都在干什么,忍了几天,就又开始上了。SNS也是一种瘾啊。
不过,像twitter和SNS以及blog等形式,的确极大地改变了信息的传播途径,很好很强大,不用在生活在一言堂的时代了,互联网的力量是很强大滴,要学会运用,而不是只看到负面的影响,记得有篇博文讲的,年轻人用互联网可以干什么,有意义的事情还是很多的,我不能再沉迷于看小说和论坛这种单方面接收内容的行为中了,要争取有自己的内容,也许是非常简单的,只要能一点一点地进步。

过完年了

对于我来说,年已经算是完了吧,该走的亲戚就那么几家,老家也懒得回,算了,就这吧,再找个同学,就OVER了。准备回去答辩,工作,挣钱养家……

opera使用pac文件自动配置翻墙

很多时候我们需要为不同的网站指定不同的代理,还有的网站需要直接连接。听说在Firefox上有AutoProxy之类的扩展可以做到这一点,在Opera上呢?照样有办法,关于代理,我觉得最伟大的发明之一就是自动代理代理配置文件Proxy Auto-Config(PAC)。其实几乎所有的浏览都支持PAC,只是可能很多人都不知道而已,那些Firefox的用户们还要额外去加装一些臃肿的扩展。
出自:Opera代理相关http://blog.judes.me/2009/09/10/opera-proxy.html
PAC:http://en.wikipedia.org/wiki/Proxy_auto-config 动代理代理配置文件Proxy Auto-Config(PAC)

活在中国的无奈

看了天涯上红色后代的帖子,真是无语了,唉,国家啊……
贴几个网址算了:
http://www.huaren.us/dispbbs.asp?boardid=358&id=432468&page=0&move=next华人网上的
http://hkday.net/ytht/news/5/2/2/2.html降伏广东帮

解封了

意外之喜^

好久没记了

呃,freedur 到期了,没办法,现在找了个没边,速度好慢的说。
提前一天回来学校,一直到现在都没心情干活,文章也看不下去,程序也看不下去,天天为了工作发愁。
重大一点的事情就是25号去了趟华阴,陪俺晕车的老婆……第二天买了辆自行车从华阴骑到了西安,后来在Google Earth上测了一下,不算在灞桥走的冤枉路的话,整个行程是130公里,哈哈,她免除了晕车的困扰,我落了个自行车,虽然差了点,900块,邦德富土达的Storm系列,不过还算能用了,呵呵,还落了个好老公的名声……

[转帖]逗号运算符

,

http://stdcpp.cn/html/1/2/0609/155.htm
39. 逗号运算符

来源:蚂蚁的 C/C++ 标准编程 作者:antigloss 等级:一般
发布于2006-09-04 23:27 被读3594次 【字体:大 中 小】


C 语言中,逗号(,)也可以是运算符,称为逗号运算符(Comma Operator)。逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。其一般形式为:

子表达式1, 子表达式2, ..., 子表达式n

例如:

a + b, c = b, c++

逗号运算符的优先级是所有运算符中级别最低的,通常配合 for 循环使用。逗号表达式最右边的子表达式的值即为逗号表达式的值。上例中,c++ 的值(c 自增之前的值)即为该表达式的值。

逗号运算符保证左边的子表达式运算结束后才进行右边的子表达式的运算。也就是说,逗号运算符是一个序列点,其左边所有副作用都结束后,才对其右边的子表达式进行运算。因此,上例中,c 得到 b 的值后,才进行自增运算。

下面我们来看一些小例子:

var = 235,567;

乍一看您可能以为这个语句有语法问题,其实它是完全正确的!首先运算逗号左边的子表达式 var = 235,var 被赋值为 235;然后运算右边的子表达式,其值为 567,故而整个逗号表达式的值是 567。可别以为 var 得到的值是 235567 或者 567 哦!如果写成:

var = (235,567);

则 var 得到的值是 567。

逗号也被用作分隔符(separator),例如:

int i_var1 = 1, i_var2 = 2, i_var3 = 3;
printf("%d %d %d\n", i_var1, i_var2, i_var3);

上例中的逗号是分隔符,而不是逗号运算符。

参考资料:C Primer 5th Edition
The C Programming Language 2nd Edition
C99 标准

本文版权归 蚂蚁的 C/C++ 标准编程 以及 作者 antigloss 共同所有,转载请注明原作者和出处。谢谢。

很矬

才知道static声明的变量只初始化一次.贴一段别人总结的.

========================================================

http://www.1-100.org/other/25030.htm

在C语言编程中,static的一个作用是信息屏蔽!

比方说,你自己定义了一个文件 -- 该文件中有一系列的函数以及变量的声明和定义!

你希望该文件中的一些函数和变量只能被该文件中的函数使用,那么,你可以在该函数、变量的前面加上static,代表他们只能被当前文件中的函数使用!


而在C++中,用static来作为信息屏蔽就显得没有必要了!因为,C++有了信息屏蔽的利器 -- class机制!

类中的private属性的变量和函数就对外禁止访问!


然后是C/C++通用的函数作用域的static型的变量!其目的,也是为了信息的屏蔽!


int fun() {
static int a = 1;
a++;
}

在第一次进入这个函数的时候,变量a被初始化为1!并接着自增1!

以后每次进入该函数,a就不会被再次初始化了,仅进行自增1的操作!

在static发明前,要达到同样的功能,则只能使用全局变量:

int a = 1;

int fun() {
a++;
}

那么,a的值就有可能被其他函数所改变!



最后,说说类中的static变量和函数。


这种存储属性的变量和函数是同一种类的不同实例之间通信的桥梁!


#include <iostream>
using namespace std;

class A {
public:
static int num; // 统计创建了多少个实例
A () {num++}; // 每创建一个实例,就让num自增1

// 返回通过构造函数所创建过的A类实例的数目
static int how_many_instance() {
return num;
}
}

static A::num = 0; // 需要在类申明的外部单独初始化!


int main() {
cout << A::how_many_instance() << endl;
A a, b, c, d;
cout << A::how_many_instance() << endl;
system("pause");
}


一般,在类内部,是通过static属性的函数,访问static属性的变量!

补充一点,在类中,static型的成员函数,由于是类所拥有的,而不是具体对象所有的,这一点对于windows的回调机制非常有用。
因为对于回调函数而言,windows不会借助任何对象去调用它,也就不会传递this指针,那么对于一般成员函数作为回调函数的后果,就是堆栈中有一个随机的变量会成为this指针,这当然会引发程序的崩溃。
而static函数,由于是整个类的,屏蔽了this指针。因此,如果成员函数作为回调函数,就应该用static去修饰它。
May 2012
M T W T F S S
April 2012June 2012
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31