Monday, July 16, 2012

From Google+

Do you know the right result?


Best Quotes: That's True!


梦-油饼

一直是很赶的样子要去参加什么比赛,其实比赛的主角也不是我,我只是一个傍观者。好不容易到了比赛现场,一个很大的教室的样子。比赛的主题是谁做的油炸饼好吃,比赛双方,一方是一个很年长的老先生,脸上皱纹很多,似乎是饱经沧桑的感觉;另一方是一个很年轻的男子,似乎还是IT业的精英。一声令下,比赛开始,只见长者很动作娴熟,胸有成竹的做了一个油炸饼,那气场,即使你没有去品尝这个饼,都会觉得这个饼肯定是世界上最美味的饼了。长者做完,接下来是年轻人开始做,当然动作没有长者那么从容,不过还是努力把饼做成了。其中有一个观众走到前面品尝了这两个饼,品尝的样子很陶醉的感觉。接下来是大家投票谁的饼好吃,因为大家都没有去品尝这两个饼,但大家都被长者的气场所征服,都投了他的票,然后就想急急忙忙的去赶下一场比赛,但比赛的结果却是年轻人取胜了,当然那位品尝过饼的观众也投了年轻人的票。作为旁观者的我,不知道怎么回事竟然流泪了,然后就哭着醒来了,可能是比较感动的缘故吧。


是呀世界上的事情也是这样的,不管什么事都不要为它的外表所迷惑,只有在用心去品尝过,方能知道其中的滋味吧。生活亦是如此。

Sunday, July 15, 2012

好好生活

早上要换衣服上班去了,打开衣橱,寻找可以穿的衣服,发现都是五六年前的衣服,而且选择的余地也不大。回想一下,自从儿子出生以来,六年了,都几乎没有去商场买过什么衣服,刚开始的时候还跟儿子和Bin去过商场,印象中最后一次是去过八佰伴附近的联华吧,买的也都是些打折的衣服,一来是儿子还小,比较好奇,逛商场很不安分,得有个大人一直跟在小子后面,很累;二来Bin最近这几年工作也实在是忙,几乎没有周末,一个人带着孩子去逛商场似乎impossible,有时候Bin偶尔有点空,也就一家人去外面吃顿饭。从此几乎就跟逛商场无缘了。现在儿子也越来越大了,偶尔把它一个人留在家里一两个小时,似乎也没有什么危险,现在大了,带他一起去商场也比较放心了,看来以后也要偶尔去逛逛商场了,也该换换行头了,要不似乎跟上海这个大都市太不协调了。


再去报个瑜伽班,练练瑜伽,做做冥想,陶冶下情操,净化下心灵。

Friday, July 13, 2012

感受存在-《在生命最深处与人相遇-欧文.亚隆思想传记》


最近读了著名心理治疗大师欧文.亚隆的著作《在生命最深处与人相遇-欧文.亚隆思想传记》。本书分章节的介绍了亚隆的著作,以及这些著作的由来。本书面向的阅读对象可能是心理治疗师,但对普通人来说,也不能不说是一种涓涓细流,可以滋润那业已干渴的心灵。从小学到大学,除了课本自己读的课外书寥寥无几,读这本书,有种想一气读完的感觉,事实也是很快就把这本书读完了。读这本书,内心感觉到一种平和,接纳,渐渐的让自己的情绪和状态都有积极的改变。书中不凡一些精辟的说辞,摘录下来,以便以后慢慢细细的品味。

爱情的迷恋:
“爱情迷恋是高度非理性的,它把对方本不具有的东西归功于对方,它眼中的对方并不是对方本来的样子,它不能把他人看做是一个有限的、独立的人,总认为对方身上充满着魔力。”
“而真正的爱的关系包括关系对方现在是什么样的,以及会成为什么样的,恰如其分地体谅对方,竭尽所能地去关心对方。恰当地把对方看做一个人,像你自己一样。你通过了解他是谁,是怎样的人,因而爱上他,这样,他就不会被迫要去成为他本来不是的那样一个人。”
“对我来说,我所赞同的爱的关系,是彼此能够看清楚对方。”

存在主义:
如果我们专心思考我们活着(即我们在世界上存在)这个事实,并且尽力把那些让人分心的、琐屑的事物置于一边,尝试去认真考虑导致焦虑的真正根源,我们便开始触及某些基本主题:死亡、无意义、孤独和自由。我每时每刻都在用这些词语思考问题,非常认真严肃地对待它们。我的思想从来,没有远离过《存在主义心理治疗》的基本框架,这本书集中讨论的就是这些基本主题。

"妈妈失去了控制,象发了疯一样地寻找一个可以责怪的对象。"这就是我过去的真实写照。我是“一个让人感到窒息的人。”以后的生活一定要用心去过。


附:欧文·亚隆是当代存在主义心理治疗大师,也是团体心理治疗的实践者与重要代表人物,他将文学与哲学带入了心理治疗领域,倡导治疗者与病人之间的亲密互动关系的培养,反对将心理治疗教条化、手册化。

未完待续

The first change for L2 ULS


Comment from Scrum Team Master :)
"Thanks to Xiaoling for good job of “CFI testmode”
The patch work and it’s really a good example of “Do things right the first time”. "

Monday, May 5, 2008

解析static关键字

文章名:解析static 关键字
出 处:vc编程网http://vcprogram.6to23.com/
作 者:vcprogram

内容提要 文章详细讲解了static的两方面的含义:静态存储和控制连接。

关键词 static,静态存储,成员函数

文章正文

通常理解static只是指静态存储的概念,事实上在c++里面static包含了两方面的含义。
1) 在固定地址上的分配,这意味着对象是在一个特殊的静态区域上创建的,而不是每次函数调用的时候在堆栈上动态创建的,这是static的静态存储的概念。
2) 另一方面,static能够控制对象对于连接器的可见性。一个static对象,对于特定的编译单元来说总是本地范围的,这个范围包括本地文件或者本地的某一个类,超过这个范围的文件或者类是不可以看到static对象的,这同时也描述了连接的概念,它决定连接器能够看到哪些名字。 关于静态存储

对于一个完整的程序,他们在内存中的分布情况如下图:

程序内存空间

(code area)
代码区

(data area)
全局数据区

(heap area)
堆区

(stack area)
栈区

一般程序的由malloc,realloc产生的动态数据存放在堆区;程序的局部数据即各个函数内部的数据存放在栈区,局部数据对象一般会随着函数的退出而释放空间;对于static数据即使是函数内部的对象也存放在全局数据区,全局数据区的数据并不会因为函数的退出就将空间释放。

函数内部的静态变量

通常,在函数体内定义一个变量的时候,编译器使得每次函数调用时候堆栈的指针向下移动一个合适的位置,为这些内部变量分配内存。如果这个变量是一个初始化表达式,那么每当程序运行到这儿的时候程序都需要对表达式进行初始化。这种情况下变量的值在两次调用之间则不能进行保存。(局部变量每次在函数调用的时候都有压栈和出栈的过程

有的时候我们却需要在两次调用之间对变量的值进行保存,通常的想法是定义一个全局变量来实现。但这样一来,变量已经不再属于函数本身了,不再仅受函数的控制。因此我们有必要将变量声明为static对象,这样对象将保存在静态存储区域,而不是保存在堆栈中。对象的初始化仅仅在函数第一个被调用的时候进行初始化,每次的值保持到下一次调用,直到新的值覆盖它。下面的例子解释了这一点。

//****************************************
//1.cpp
//****************************************
1 #include
2 void add_n(void);
3 void main(){
4 int n=0;
5 add_n();
6 add_n();
7 add_n();
8 }
9 void add_n(void){
10 static n=50;
11 cout<<”n=”<static变量必须被初始化,但是零值初始化仅仅只对系统预定义类型有效,比如int,char,bool等等。事实上我们用到的不仅仅是这些预定义类型,大多数情况下可能用到结构,联合或者类等各种用户自定义的类型,对于这些类型用户必须使用构造函数进行初始化。如果我们在定义一个静态对象的时候没有指定构造函数的参数,那就必须使用缺省的构造函数,如果缺省的构造函数也没有的话则会出错。看下面的例子。
//**************************************************
// 2.cpp
//**************************************************
1 #include
2 class x{
3 int i;
4 public:
5 x(int i=0):i(i) {
6 cout<<”i=”<类中的静态成员

static静态存储的概念可以进一步引用到类中来。c++中的每一个类的对象都是该类的成员的拷贝,一般情况下它们彼此之间没有什么联系,但有时候我们需要让它们之间共享一些数据,我们可以通过全局变量来实现,但是这样的结果是导致程序的不安全性,因为任何函数都可以对这个变量进行访问和修改,而且容易与项目中的其余的名字产生冲突,因此我们需要一种两全其美的方法,既可以当成全局数据变量那样存储,又可以隐藏在类的内部,与类本身联系起来,这样只有类的对象才可以操纵这个变量,从而增加了变量的安全性。

这种变量我们称之为类的静态成员,静态成员包括静态数据成员和静态成员函数。类的所有的静态数据成员有着单一的存储空间而不管类的对象由多少,这些对象共享这块存储区域。因此每一个类的对象的静态成员发生改变都会对其余的对象产生影响。先看下面的例子。
//**************************************
// student.cpp
//**************************************
1. #include
2. #include
3. class student{
4. public:
5. student(char* pname=”no name”){
6. cout<<”create one student”静态数据成员

在代码中我们可以看出,number既不是对象s1也不是对象s2的一部分,它是属于student 这个类的。每一个student对象都有name成员,但是number成员却只有一个,所有的student对象共享使用这个成员。s1.number与s2.number是等值的。在student的对象空间中没有为number成员保留空间,它的空间分配不在student的构造函数里完成,空间回收也不再析构函数里面完成。因此与name成员不一样,它不会随着对象的产生或者消失而产生或消失。

由于静态数据成员的空间分配在全局数据区,因此在程序一开始运行的时候就必须存在,所以静态成员的空间的分配和初始化不可能在函数包括main主函数中完成,因为函数在程序中被调用的时候才为内部的对象分配空间。这样,静态成员的空间分配和初始化只能由下面的三种途径。一是类的外部接口的头文件,那里声明了类定义。二是类定义的内部实现,那里有类成员函数的定义和具体实现。三是应用程序的main()函数前的全局数据声明和定义处。由于静态数据成员必须实际的分配空间,因此不可能在类定义头文件中分配内存。另一方面也不能在头文件中类声明的外部定义,因为那会造成多个使用该类的源程序重复出现定义。静态数据成员也不能在main()函数的全局数据声明处定义。如果那样的话每一个使用该类的程序都必须在程序的main()函数的全局数据声明处定义一下该类的静态成员。这是不现实的。唯一的办法就是将静态数据成员的定义放在类的实现中。定义时候用类名引导,引用时包含头文件即可

例如 class a{
static int i;
public:
//
}
在类定义文件中 int a::i=1;

有两点需要注意的是

1. 静态数据成员必须且只能定义一次,如果重复定义,连接器会报告错误。同时它们的初始化必须在定义的时候完成。对于预定义类型的静态数据成员,如果没有赋值则赋零值。对于用户自定义类型必须通过构造函数赋值,如果没有构造函数包括缺省构造函数,编译无法通过。

2. 局部类中不允许出现静态数据成员。因为静态数据成员必须在程序运行时候就存在这导致程序无法为局部类中的静态数据成员分配空间。下面的代码是不允许的。

void fn(){
class foo{
static int i;//定义非法。
public:
//
}
}

静态函数成员

与静态数据成员一样,我们也可以创建一个静态成员函数,它为类的全部服务而不是为某一个类的具体对象服务。静态函数成员与静态成员一样,都是类的内部实现,属于类定义的一部分。程序student.cpp中的number()就是静态成员函数,它的定义位置与一般成员函数相同。

普通的成员函数一般都隐含了一个this指针,this指针指向类的对象本身,因为普通成员函数总是具体的属于某个类的具体对象的。通常情况下this是缺省的。如函数add()实际上是写成this.add().但是与普通函数相比,静态成员函数由于不是与任何的对象相联系因此它不具有this指针,从这个意义上讲,它无法访问属于具体类对象的非静态数据成员,也无法访问非静态成员函数,它只能调用其余的静态成员函数。如下面的代码

1 class x {
2 int i;
3 static int j;
4 public:
5 x(int i=0):i(i){
6 j=i
7 }//非静态成员函数可以访问静态函数成员和静态数据成员。
8 int val() const {return i;}
9 static int incr(){
10 i++;//错误的代码,因为i是非静态成员,因此incr()作为静态成员函数无
11   //法访问它。
12 return ++j;
13 }
14 static int fn(){
15 return incr();//合法的访问,因为fn()和incr()作为静态成员函数可以互相访
16 //问。
17 }
18 };
19 int x::j=0;
20 main(){……}

根据上面的程序可以总结几点:
1. 静态成员之间可以相互的访问,包括静态成员函数访问静态数据成员和访问静态成员函数。
2. 非静态成员函数可以任意的访问静态成员函数和静态数据成员。
3. 静态成员函数不能访问非静态成员函数和非静态数据成员。

由于没有this指针的额外开销,因此静态成员函数与全局函数相比速度上会有少许的增长。

理解控制连接

理解控制连接之前我们先了解一下外部存储类型的概念。一般的在程序的规模很小的情况下我们用一个源程序既可以表达完整。但事实上稍微有价值的程序都不可能只用一个程序来表达的,而是分割成很多的小的模块,每一个模块完成特定的功能,构成一个源文件。所有的源文件共享一个main函数。在不同的源文件之间为了能够相互进行数据或者函数的沟通,这时候通常声明数据或者函数为extern,这样用extern声明的数据或者函数就是全局变量或者函数默认情况下的函数的声明总是extern的。在文件范围内定义的全局数据和函数对程序中的所有的编译单元来说都是可见的。这就是通常我们所说的外部连接

但有时候我们可能想限制一个名字对象的可见性,想让一个对象在本地文件范围内是可见的,这样这个文件中的所有的函数都可以利用这个对象,但是不想让本地文件之外的其余文件看到或者访问该对象,或者外部已经定义了一个全局对象,防止内部的名字对象与之冲突。

通过在全局变量的前面加上static,我们可以做到这一点。在文件的范围内,一个被声明为static的对象或者函数的名字对于编译单元来说是局部变量,我们称之为静态全部变量。这些名字不使用默认情况下的外部连接,而是使用内部连接。从下面的例子可以看出static是如何控制连接的。 工程文件为first.prj由两个源文件组成。
exam1.cpp
exam2.cpp
//***************************************
// exam1.cpp
//***************************************
1 #include
2 int n;
3 void print_n();
4 void main()
5 {
6 n=20;
7 cout<。(static int n 是作为局部变量的)

改造二: 我们在exam1.cpp的第二行和第三行之间增加void staticfn();同时在第八行和第九行之间增加staticfn()的调用。再看执行结果。vc会产生一个找不到函数staticfn的错误。这说明exam1.cpp无法共享exam2.cpp中的staticfn()。

从上面的结论可以看出下面几点:
1. static解决了名字的冲突问题。使得可以在源文件中建立并使用与其它源文件甚至全局变量一样的名字而不会导致冲突的产生。这一点在很大的项目中是很有用处的

2. 声明为静态的函数不能被其他的源文件所调用,因为它的名字只对本地文件可见,其余的文件无法获取它的名字,因此不可能进行连接。

在文件作用域下声明的inline函数默认情况下认为是static类型。在文件作用域下声明的const的常量默认情况下也是static存储类型的。

Wednesday, April 9, 2008

减肥进行中

对自己的水桶身材不抱任何希望的时候,突然想减肥了,这是好现象。乘着春天万物复苏的时候,我也要来个凤凰涅盘,决定减去身上的赘肉。老公也老是在我耳边敲警钟,“该减肥了!”。好,减,一定减。

途径:少吃,多运动。

食谱:早饭:豆浆一碗,菜包一个,鸡蛋一个
中饭:蔬菜2分,荤菜吃鱼,少吃肉,稀饭一碗,小馒头一个
晚饭:两半黄瓜一根,粥一碗。苦瓜一半。

理念:1. 多看看美女,别人能保持那么好的身材,我肯定也行。
2. 调节身体到碱性状态。
3. 我要做排骨精,瘦都是饿出来的。

最近似乎到一个瓶颈期了,体重减的很少。但我有耐心,坚持,一定要坚持。

儿子梦游

这几天儿子特别缠爸爸,让他睡觉的时候,都不要妈妈抱,要爸爸抱。真是郁闷,老公说因为你赔他玩的时间太少的原因。但我觉得真正的原因是,在他不听话的时候我老是凶他。看来这个黑脸要我来唱了。

这几天睡觉前都要在他的小床与爸妈的大床之间转几个来回,才会体力不支昏睡过去。

结果昨天夜里我跟老公正睡的香呢,朦胧中听到“大床,大床。。。”。老公睁开眼一看原来小子正站在小床上,想到大床上来呢。老公赶紧吧他抱到了大床上。结果小子也没闹,就闭上眼,睡了。原来在梦游哦。

早晨醒来,老公说,下死他了,万一小子自己从小床出来,那肯定会摔的很惨。看来以后要让小床贴着大床了,得小心点了。

Thursday, January 11, 2007

育儿鉴言

好脾气的悖论--毕淑敏

记得一位老妈妈曾对我说,要为儿子挑一房好脾气的媳妇。我说,你怎么考察呢?她说,看为娘的脾气就知道女儿的性情了。过了几年,我问老人家,媳妇怎样?她说,啊呀呀,再没那么凶的了,属煤气罐的,一点就着!老人又说,轮到给小儿子说媳妇,这回特地挑了一家悍妇的女儿,果然竟是极温顺的。你说这是怎么回事?!她瞪着苍老的黄眼珠问我。
我不知道老妈妈的遭遇是否具有普遍性,也不认为脾气孬好是恋爱的先决,只是环顾四 周的家庭,像这般悖论的情形,似乎还可找到不少。
一个在充满了爱意家庭中长大的孩子,却丧失最起码的温情,凶残地对亲人举起屠刀。一个极朴素的母亲,孩子反奢糜成风。钵满缸流的富家子弟,横起杀人越货的贼心。勤俭本分人的后代,摇身成了江洋大盗。目不识丁的双亲,养育半打硕士博士。荒僻的山野,走出雄才大略的军师。贫寒人一旦发达,挥金如土。富甲天下的豪门,一毛不拔……
家庭通常是一个古老的模具,克隆出与前辈酷似的后代。此等异样情形,实在是一个悖论。设想因为父母脾气躁动,孩童自小在疾风暴雨中成长,经受锻炼考验,耐力反倒出众。家长若老好人,四处懦弱逢迎,对孩子也唯命是从,自然易养出暴戾乖张之徒。周围的人手脚不停,操心不止,孩子手到擒来,端的惯成特号懒包。爹妈若一觉睡到日头红,孩子必得自我张罗早饭,无意中造就了一个勤快人。所以除了正面的培养,有时候,不妨利用悖论。
你想得到一个勇敢的孩子吗?月夜里,虽然他年纪幼小,体质孱弱,也让他横刀跃马地走在黑暗中,给人带路。
你想得到一个慷慨的孩子吗?无论你多么富有,不要平白无故给他金钱。每一分硬币必须让他用汗水兑换,然后不问那钱的去处,给他以完全的支配权
。   你想得到一个清洁的孩子吗?看到他肮脏时,千万不要帮他洗涤,坚决袖起你的手,由着污浊下去。直到他自己忍无可忍,动手改变这局面,在新与旧的对比中,觉悟到洁净是一种舒适的状态和文明的美德。
你想得到一个智慧的孩子吗?当他遇到难题请教你的时候,除了给他一本书,什么都不要讲。坚决管住你的嘴巴,这是百发百中的诀窍!在几番艰苦的摸索之后,他自然在失败与挫折里聪明起来了。
你想得到一个独立自主的孩子吗?当他求助的时候,狠下心来,置若罔闻地看他哭泣和摸索。千万记得要装傻。不但要装得像,如果你有余力,最好再给他捣捣乱,孩子便会牢牢记住,世上最重要的事是依靠自己。
你想得到一个善于倾听,虚怀若谷、友好待人的孩子吗?当孩子兴致勃勃讲话的时候,毫不留情地把他打断,嘲笑他,然后走开,留他坐在那里孤独地发呆。如是者三,只要他不是一个过分麻木和愚钝的孩子,汲取了反面教训,就能学会宽容与共享快乐。
你想得到一个不推诿责任,不惊慌失措,在困境中依然沉着坚定的心理健康的现代人雏形吗?当他跌倒时,不要代他埋怨路的不平,不要伸出搀扶的手,甚至在他伤口流血的时候,也让他自我包扎。坚持冷静地作壁上观,孩子便在困境中顽强地爬起来,艰难昂扬地成长。
还可以举出很多看似生冷而昂然的手段。这也是一个悖论。谁又能说这里不溶解着父母更深的养育之爱和良苦的用心锻造呢?

Monday, January 8, 2007

周末晒儿子灌香肠

上个周末,气温不是很高,但太阳很好,照在身上暖融融的。跟儿子一起晒太阳,老公不知怎么想的,想给宝宝作日光浴,就将他的棉裤脱光,小家伙开心得很,有时踢脚又是挥拳的。晒了10几分钟,结果到晚上时,小鼻鼻开始挂鼻涕了,原来感冒了。晚上没有睡好,睡一会,哼吃一会,看来鼻子很不舒服。还好昨天已经好点了。不过老公说他也感冒了,还老是怪宝宝传染的。

上个周末很厉害,受篱笆食堂上姐妹们的影响,忽然很想做香肠。于是说干就干,跟老公去金口路菜市场买了肉,肠衣,调料,灌起了香肠,不知道味道怎么样,但样子还不赖。在买肠衣的时候老板还不是很乐意卖给我们,说已经有人预订了,最终还是卖给了我们2节,呵呵,很开心。在灌肠的时候,不小心老是会爆肠,公婆还起了个很好的名字,说是放爆竹,呵呵,很形象的。其实公公婆婆对我们还不错,虽然没什么钱,但对我这个霸道的媳妇还是很能容忍的,但小妇人总是觉得公公婆婆在我们买房子的时候没有帮忙,有点心结。静下心来想想,还是挺感激他们的。正如老公所说,把他们当作自己的父母来看,就什么心结也没有了。也是上个礼拜六,老公因为闯红灯被警察叔叔罚了200元,但是因为作了香肠,心情还不是很差。忘了拍片片,有空拍张放上来。期待着20天后的美味。嚯嚯。。。

希望老公和儿子快快好起来。

Saturday, December 30, 2006

Say bye to 2006

今天是2006年最后一天,坐在办公室等待着下班。忽然感到应该写点什么以纪念过去的2006年。回想即将过去的一年,发生了很多事情,还是满值得写写的。

06年年初时,还清了所有的房贷,顿时感觉心理上轻松了不少,以至于那天跟老公去金口福小撮了一顿,表示庆贺。

都说女人一生中最重要的三件事是买房、结婚、生孩子。就在这一年,经过十个月艰苦的怀孕,在医院二十四小时的疼苦煎熬,我的儿子澄澄呱呱落地,我自己也荣生妈妈,记得当时在产房看到小家伙的那一刻,激动的泪水模糊了我的双眼。说了一句:“终于生好了!"当时看到澄澄时,小眼睛都没有睁开,只是觉得怎么这么像老公,不像妈妈,对此还一直心存芥蒂。如今澄澄已长成快半岁的小伙子了,也越来越像妈妈了,见了妈妈就会笑,还是很欣慰的。

在这一年里,老公开上了小狮子307,为了它还动用了我生澄澄的生育基金,对此我一直耿耿于怀,不知怎么回事,总觉得这钱应该我来花。

还有06年是股市牛年,我也搭了一下牛年的顺风车,买了点基金,少赚了点,以至于姐姐老说我运气好。呵呵,希望明年股市继续今年的表现。

昨天经不住老公的一再唠叨,狠心去南京路亨得利将他梦寐以求的TITONI(梅花表)请回了家,老公激动的连饭都不想吃了,还想带着它睡觉。还吹嘘说有钱了也给我买快更好的。唉,鬼知道什么时候会有呢,不过说了总比没说心理舒服,女人就是这么容易满足。

似乎06年就这么多收获,还是颇丰的。

07年的脚步马上就来了,该做什么呢。忽然想到06年买的长帝25B,似乎除了烤过鸡翅,和一次面包和蛋糕外,一直静静的呆在那个角落里,该让它发挥一下,为我们多增添一些生活的乐趣了,07年希望多作点美食了。

还有自己生澄澄后堆在身上的肉肉能减减了,那就等断奶后多锻炼一下身体了。

来上海拼了这么多年,发现自己什么地方也没去,居然连杭州都没去过,希望07年能有时间出去走走。

最后也是最重要的就是照顾好澄澄小朋友,让他茁壮成长。总之,07年的口号就是,努力使生活更美好!

Monday, December 18, 2006