2006年12月28日

今天在学习c++的深度复制概念时,发现c++中的字符数组和字符指针两种形式的数据进行深度复制时,有一些小小的差异,本人初学,特记之,以防遗忘。

在c++中,当一个字符串以字符数组的形式定义时,都具有数组长度的定义,以char str[30]为例。这时代表系统已经分配了30个字节的内存给该变量,所以在执行深度复制时,一般采用strncpy函数进行复制,而不用new的形式分配新的内存。而当一个字符串是以字符指针的形式定义时,则代表该变量将在程序执行时才给予分配内存,这种形式的变量在执行深度复制时,一般需要根据strlen函数确定的字节数大小来new一个新的内存给这个指针,然后再利用strcpy进行字符串的复制,这就是所谓的动态分配内存。举例说明如下(代码在borland C++6.0下调试通过):

//example.h-------code start----------
#ifndef EXAMPLE_H_
#define EXAMPLE_H_   
class example{
private:
         enum{SIZE=30};
         char str[SIZE];
         char *cp;
public:
         example(){str[0]='\0';cp=NULL;}
         example(const char *,const char *);
         example(const example &);
         ~example();
         void show() const;
};
#endif
//example.h-------code end-----------
//example.cpp-----code start---------
#include <iostream>
#include "example.h"
example::example(const char *s,const char *p){
         std::strncpy(str,s,SIZE-1);
         str[SIZE]='\0';
         cp=new char[std::strlen(p)+1];
         strcpy(cp,p);
}
example::example(const example &e){
         std::strncpy(str,e.str,SIZE-1);
         str[SIZE]='\0';
         cp=new char[std::strlen(e.cp)+1];
         strcpy(cp,e.cp);
}
example::~example(){delete []str;}
void example::show() const{
         std::cout << str <<std::endl;
         std::cout << cp <<std::endl;
}
//example.cpp-----code end----------
//example_main.cpp------code start--------
#include <iostream>
#include "example.h"
int main(){
      example e1("ok","good");
      example e2(e1);
      e1.show();
      e2.show();
      std::cin.get();
      return 0;
}
//example_main.cpp-----code end----------
posted @ 2006-12-28 13:30 LoVeTESt 阅读(1172) | 评论 (0)编辑 收藏

2006年12月19日

个人点评:每个人在生活中都会有忙不完的事,在日复一日的忙碌中,我们或许早已忘记了自己最初的信仰和目标。忙碌过后,我们收获了什么,我们走到了哪里,我想很多人都和我一样的迷茫。不妨看看这位传奇的人物的做法,重新找回自己想要的一切。

事分轻重缓急,因此不要把全部的时间都去做那些看起来“紧急”的事情,一定要留一些时间做那些真正“重要”的事情。

 

最近有朋友问我,为什么你可以每天工作那么久的时间,在没有周六和周日的情况下,依然保持良好的工作状态和身体状态?这是个好问题,很多人辛苦工作,可总是觉得自己没有成就感或者疲于奔命。如何长时间工作并且保持效率?我愿意将自己的心得与大家分享。

我以前读博士时,基本上一天工作16小时。如何在艰苦的工作中,激励自己、让自己能做到更多从而发挥自己的潜力,我认为大家应该考虑的是:要做你真正感兴趣、与自己人生目标接轨的事情。

我发现我的“生产力”和我的“兴趣”有着直接的关系,而且这种关系还不是单纯的线性。如果面临我没有兴趣的事情,我可能会花40%的时间,但是真正产生的结果可能只有20%的工作效率;如果遇到我感兴趣的事情,我可能会花100%的时间而得到200%的工作效率。

其次,不要成为“紧急”的奴隶。要关注“关键”的问题。事分轻重缓急,因此不要把全部的时间都去做那些看起来“紧急”的事情,一定要留一些时间做那些真正“重要”的事情。管理自己时间的问题,尤其是要分清何为“紧急的事”、何为“重要的事”。

我这里有几个辅助的建议:第一,排序。每天对该做的事排好优先次序,并按照这个次序来做。我感到在工作和生活中每天都有干不完的事,唯一能够做的就是分清轻重缓急。有的年轻人会说“没有时间学习”,其实,换个说法就是“学习没有被排上优先级次序”。

第二,时间管理与目标设定、目标执行具有相辅相成的关系,时间管理与目标管理是不可分的。每个小目标的完成,会让你清楚地知道你与大目标的远近,你的每日承诺是你的压力和激励,每日的行动承诺都必须结合你的长远目标。所以,要想有计划地工作和生活,需要你管理好自己的时间。这一点说起来容易,但做起来就不那么简单。

第三,在时间管理中,必须学会运用80%∶20%原则,要让20%的投入产生80%的效益。要把握一天中20%的经典时间(有些人是早晨,也有些人是下午或夜里),专门用于你对于关键问题的思考和准备。有的人以为,安排时间就是做一个时间表,那是错误的。人的惯性是先做最紧急的事,但是这么做有可能使重要的事被荒废。每天管理时间的一种方法是,早上定立今天要做的紧急事和重要事,睡前回顾这一天有没有做到两者的平衡。

有那么多的“紧急事”和“重要事”,想把每件都做到最好是不实际的。建议你把“必须做的”和“尽量做的”分开。必须做的要做到最好,但是尽量做得尽力而为就可。建议你用良好的态度和胸怀接受那些你不能改变的事情,多关注那些你能够改变的事情。以终为始,做一个长期的蓝图规划,一步一步地向你的目标迈进。这样,你就能一步步地看到进展,就会更有动力、自信地继续做下去。

其实学习和工作的状态是一样的道理。别人曾经问我,如何在长时间内保持高效的学习状态。我的建议是,第一要精神好,全神贯注,心无杂念。第二要给自己时间放松。第三要给自己一些压力。不要让自己一直处于松弛的环境中。第四,不要太长的时间做同样一件事情。因为重复多了容易感觉枯燥和疲劳,效率就会变差。第五,不要没有准备就开始干活。第六,反复的练习、回忆、记忆是非常有用的。这些道理都很符合做事情的状态。

最后,值得注意的是,年轻时拼命工作或许没有太大关系,但是年纪较长后,你就必须要照顾自己的身体,要平衡好工作、嗜好、家庭等各方面的需求。我不认为“锻炼身体”能够从根本上改变你的工作状态和身体状态—虽然锻炼身体是好事,多运动也会让你更有精力,但我相信能改变你的状态的关键是心理而不是生理上的问题。真正投入到你的工作中才是一种态度、一种渴望、一种意志。

posted @ 2006-12-19 14:32 LoVeTESt 阅读(143) | 评论 (0)编辑 收藏

2006年6月12日

平时没有注意过这个问题,今天突然遇到还感到比较棘手。百度一下,才知道了问题的答案,遂记之。

在主页面调用iframe内的函数时,需要在主页使用frames['iframeName'].funcName();语句来调用,且必须使用某一事件来触发该语句。样例如下:

index.htm代码如下:
<html>
<head>
</head>
<body>   <!--也可以放在这里用onload事件来触发frames['main'].test();-->
<input type=button value=btn onclick="frames['main'].test();">   
<iframe src="a.htm" name=main></iframe>
</body>
</html>

a.htm代码如下:
<html>
<head>
</head>
<body>
<script>
function test(){
   alert("ok");
}
</script>
</body>
</html>
posted @ 2006-06-12 13:57 LoVeTESt 阅读(4098) | 评论 (0)编辑 收藏

2006年5月10日

一直没注意怎么改变文本框内文字的颜色,今天突然想起来查了一下,原来是这样的,嘿嘿。
利用文本的style.color属性来设置文字颜色,如下例即可将文字变为红色:

<input type="text"  id="txt1" value="一些文字">
<script language="javascript">
txt1.style.color='red'
</script>

posted @ 2006-05-10 14:43 LoVeTESt 阅读(2754) | 评论 (2)编辑 收藏

2006年4月21日

平时写JS还没注意,今天突然注意到原来JS和HTML的注释原来是有所区别的,希望自己今后引起注意。

HTML中的注释标记是:
<!--
   some code here
-->

JS中的块注释标记是:
/*
 some code here
*/
posted @ 2006-04-21 13:48 LoVeTESt 阅读(1142) | 评论 (0)编辑 收藏

2006年4月20日

代码如下:

<p>
  <input name="textfield" type="text" onSelect="document.selection.empty()" value="这个框内的字不能被选中">
  <input name="textfield2" type="text" value="这个框内的字能被选中">
</p>
posted @ 2006-04-20 16:00 LoVeTESt 阅读(945) | 评论 (0)编辑 收藏
 

下面的代码可以很简单地隐藏和显示页面内容:
<script>
   function display(d){
       if(d == 0){
           s1.style.display="block";
       }else{
           s1.style.display="none";
       }
   }
</script>

<select name="Other1" size="1" onchange="display(this.value)">
  <option>无</option>
  <option value=0>显示流水号</option>
  <option value=1>包长度</option>
</select>

<div style="display:none" id="s1">
流水号最大值:<input name="Max1" type="text" size="15" maxlength="15">
流水号最小值:<input name="Min1" type="text" size="15" maxlength="15">
</div>

posted @ 2006-04-20 15:32 LoVeTESt 阅读(498) | 评论 (0)编辑 收藏

2005年12月7日

转贴如下:
夫妻经典对白

一天中午,丈夫在外给家里打电话:“亲爱的老婆,晚上我想带几个同事回家吃饭可以吗?” (订货意向)
妻子:“当然可以,来几个人,几点来,想吃什么菜?”

丈夫:“6个人,我们7点左右回来,准备些酒、烤鸭、番茄炒蛋、凉菜、蛋花汤……。你看可吗?” (商务沟通)

妻子:“没问题,我会准备好的。” (订单确认)

妻子记录下需要做的菜单 (MPS计划) ,具体要准备的东西:鸭、酒、番茄、鸡蛋、调料…… (BOM物料清单) ,发现需要:1只鸭蛋,5瓶酒,4个鸡蛋…… (BOM展开) ,炒蛋需要6个鸡蛋,蛋花汤需要4个鸡蛋 (共用物料) 。

打开冰箱一看 (库房) ,只剩下2个鸡蛋 (缺料) 。

来到自由市场,妻子:“请问鸡蛋怎么卖?” (采购询价)

小贩:“1个1元,半打5元,1打9.5元。”

妻子:“我只需要8个,但这次买1打。” (经济批量采购)

妻子:“这有一个坏的,换一个。” (验收、退料、换料)

回到家中,准备洗采、切菜、炒菜…… (工艺线路) ,厨房中有燃气灶、微波炉、电饭煲…… (工作中心) 。

妻子发现拨鸭毛最费时间 (瓶颈工序,关键工艺路线) ,用微波炉自己做烤鸭可能来不及 (产能不足) ,于是阅览室在楼下的餐厅里买现成的 (产品委外) 。

下午4点,接到儿子的电话:“妈妈,晚上几个同学想来家里吃饭,你帮忙准备一下。” (紧急订单)

“好的,你们想吃什么,爸爸晚上也有客人,你愿意和他们一起吃吗?”

“菜你看着办吧,但一定要有番茄炒鸡蛋,我们不和大人一起吃,6:30左右回来。” (不能并单处理)

“好的,肯定让你们满意。” (订单确定)

“鸡蛋又不购了,打电话叫小店送来。” (紧急采购)

6:30,一切准备就绪,可烤鸭还没送来,急忙打电话询问:“我是李太,怎么订的烤鸭还不送来?” (采购委外单跟催)

“不好意思,送货的人已经走了,可能是堵车吧,马上就会到的。”

门铃响了。

“李太太,这是您要的烤鸭。请在单上签一个字。” (验收、入库、转应付账款)

6:45,女儿的电话:“妈妈,我想现在带几个朋友回家吃饭可以吗?” (呵呵,又是紧急订购意向,要求现货)

“不行呀,女儿,今天妈已经需要准备两桌饭了,时间实在是来不及,真的非常抱歉,下次早点说,一定给你们准备好。” (哈哈,这就是ERP的使用局限,要有稳定的外部环境,要有一个起码的提前期) 。

  …… ……

送走了所有客人,疲惫的妻子坐在沙发上对丈夫说:“亲爱的,现在咱们家请客的频率非常高,应该要买些厨房用品了 (设备采购) ,最好能再雇个小保姆 (连人力资源系统也有缺口了) 。

丈夫:“家里你做主,需要什么你就去办吧。” (通过审核)

妻子:“还有,最近家里花销太大,用你的私房钱来补贴一下,好吗?” (最后就是应收货款的催要)

现在还有人不理解ERP吗?记住,每一个合格的家庭主妇都是生产厂长的有力竞争者。

posted @ 2005-12-07 11:40 LoVeTESt 阅读(199) | 评论 (0)编辑 收藏
 
今天在51看了一个帖子,上面的一个回复让我看了觉得非常认同,同时也决定了今后两年的短期人生目标:

管理方面,要在工作中不断总结经验,形成自己的管理特点。
技术方面,一定要从亲自动手开始,尽量多的学习先进的测试方法,至少掌握一门编程语言及掌握一种自动化测试工具。

呵呵,共勉,贵在坚持!
posted @ 2005-12-07 11:35 LoVeTESt 阅读(148) | 评论 (0)编辑 收藏

2005年11月25日

自从我女朋友来我这里我便又迷上了滑旱冰,其实以前学过,只是隔了好久了,又忘了。她来了之后我们就经常在周末一起去滑旱冰,倒颇好玩。我记得我最开始学会滑的时候,只是懂得那么一点点,能够顺着滑道小心翼翼地向前滑,心里总是提心吊胆,生怕摔倒。看着别的高手来去自如、肆意挥舞着自己的身躯,真是好生羡慕,不知道自己哪一天才能达到他们的水平,也不知道自己能够学得好滑冰这门“技术”。现在我在我GF的带领下,进步得满快,通过不断地摸索和练习,终于现在我也能顺着跑、倒着滑、跳起来、蹲下去了,呵呵,应该属于中等水平了。现在我还在努力着,每次去滑的时候都抓紧机会练习,争取进一步练好自己的技术。

我的题目和我刚刚说的好像挂不上钩,其实我真正想说的是不管哪一行、做什么技术都没有天生的“高手”,当然做软件测试也是一样。任何人都是通过不断的摸索和练习才真正练就了过硬的本领。只要自己肯努力学习和不断练习,那么成为高手就很简单,“无他,唯手熟尔!”——相信自己,你也可以!

posted @ 2005-11-25 09:04 LoVeTESt 阅读(542) | 评论 (0)编辑 收藏
仅列出标题  下一页