• 一堂价值39万元的课,把它看完,你一定会有收获 转载

    http://user.qzone.qq.com/358168795?ptlang=2052

    第一课
    一个男人在他妻子洗完澡后准备进浴室洗澡。这时,门铃响了。
    妻子迅速用浴巾裹住自己冲到门口。
    当她打开门时,邻居鲍勃站在那儿。
    在她开口前,鲍勃说,“你如果把浴巾拿掉,我给你800美元。”
    想了一会儿,这个女人拿掉浴巾赤裸地站在鲍勃面前。几秒钟后,鲍勃递给她800美元然后离开了。
    女人重新裹好浴巾回到屋里。
    当她踏进浴室时,丈夫问她,“是谁呀?”
    “是邻居鲍勃。”她回答。
    “哦,”丈夫说,“他有没有提到还欠我800美元?”
    故事寓意:
    及时与同舟共济的股东分享重要信息,将会避免不必要的曝光。

    第二课
    一个销售员、一个办事员和他们的经理步行去午餐时发现了一盏古代油灯。
    他们摩擦油灯,一个精灵跳了出来。
    精灵说:“我能满足你们每人一个愿望。”
    “我先!我先!”办事员说,“我想去巴哈马群岛,开着快艇,与世隔绝。”
    倏!她飞走了。
    “该我了!该我了!”销售员说,“我想去夏威夷,躺在沙滩上,有私人女按摩师,免费续杯的冰镇果汁朗姆酒,还有一生中的最爱。”
    倏!他飞走了。
    “OK, 该你了。”精灵对经理说。
    经理回答:“我要那两个蠢货午饭后马上回来工作!”
    故事寓意:
    永远让你的老板开口先

    第三课
    一只鹰坐在高高的树上休息,无所事事。
    一只小兔子看见鹰并且问它,“我能象你一样坐着什么都不干吗?”
    鹰回答:“行啊,为啥不行。”
    于是,兔子坐在鹰下面的地上休息。突然,一只狐狸出现了,它扑到兔子身上把它吃掉了。
    故事寓意:
    要想坐着无所事事,你必须坐在非常、非常高的位置

     

    第四课
    一只小鸟飞去南方过冬。天实在太冷了。它冻僵了,掉在一片田野上。
    它躺在那儿时,一头母牛走过来在它身上拉了一堆屎。
    冻僵的小鸟躺在粪堆里,开始感觉到了温暖。
    牛粪确实使它暖和过来了。
    它躺在温暖的牛粪中,异常高兴,并开始唱起歌来。
    一只过路的猫听到鸟叫赶过来看个究竟。
    顺着声音,它发现了牛粪下的小鸟,并迅速把它拖出来吃掉了。
    故事寓意:
    (1) 并不是每个在你身上拉屎的都是你的敌人。
    (2) 并不是每个把你拖出粪堆的都是你的朋友。
    (3) 当你深陷粪堆中的时候,最好闭上你的鸟嘴
    1)学会 沉默

    有 时候,你被人误解,你不想争辩,所以选择沉默。本来就不是所有的人都得了解你,因此你认为不必对全世界喊话。却也有时候,你被最爱的人误解,你难过到不想 争辩,也只有选择沉默。全世界都可以不懂你,但他应该懂,若他竟然不能懂,还有什么话可说?生命中往往有连舒伯特都无言以对的时刻,毕竟不是所有的是非都 能条列清楚,甚至可能根本没有真正的是与非。那么,不想说话,就不说吧,在多说无益的时候,也许沉默就是最好的解释。

    (2)至少 平静
       在你跌入人生谷底的时候,你身旁所有的人都告诉你:要坚强,而且要快乐。坚强是绝对需要的,但是快乐?在这种情形下,恐怕是太为难你了。毕竟,谁能在跌 得头破血流的时候还觉得高兴?但是至少可以做到平静。平静地看待这件事,平静地把其他该处理的事处理好。平静,没有快乐,也没有不快乐。

    (3)学会弯腰 这会是我意外的收获

      和 别人发生意见上的纷歧,甚造成言语上的冲突,所以你闷闷不乐,因为你觉得都是别人恶意。别再耿耿于怀了,回家去擦地板吧。拎一块抹布,弯下腰,双膝着地, 把你面前这张地板的每个角落来回擦拭干净。然后重新省思自己在那场冲突,所说过的每一句话。现在,你发现自己其实也有不对的地方了,是不是?你渐渐心平气 和了,是不是?有时候你必须学习弯腰,因为这个动作可以让你谦卑。劳动身体的同时,你也擦亮了自己的心绪。而且,你还拥有了一张光洁的地板呢。这是你的第 二个收获

     
    (4)不要想 如果 当初
       你说,人生是一条有无限多岔口的长路,永远在不停地做选择。如果只是选择吃炒面或炒饭,影响似乎不大,但选择读什么科系、做什么工作、结婚或不结婚、要 不要有孩子,每一个选择都影响深远,而不同的选择也必定造就完全不一样的人生。你又说,生命中不可承受之情,就在于人生没有重来的机会啊。如果当初如何如 何,现在就不会怎样怎样...这种充满怅然的喃喃自语,还是别再多说了吧。每一个岔口的选择其实没有真正的好与坏,只要把人生看成是自己。独一无二的创 作,就不会频频回首如果当初做了不一样的选择。

    (5)努力吧 不管成功与否 至少曾经美丽
      漫步林间,你看见一株藤蔓附着 树干,柔软与坚实相互交缠,你感动于这静美的一幕。让幸福与归属就此驻足吧。你想。不知未来会有怎样一番风雨摧折?也许藤将断、树会倒,也许天会荒,地将 老。你又想。那么,请时光停格在此刻吧。停格即是永恒。永恒里若有这静美的一刻,未来可能遭遇的种种劫难,便已得到了安慰与报偿。

    (6)保持单纯
       因为思虑过多,所以你常常把你的人生复杂化了。明明是活在现在,你却总是念念不忘着过去,又忧心忡忡着未来;坚持携带着过去、未来与现在同行,你的人生 当然只有一片拖泥带水。而单纯是一种恩宠状态。单纯地以皮肤感受天气的变化,单纯地以鼻腔品尝雨后的青草香,单纯地以眼睛统摄远山近景如一幅画。单纯地活 在当下。而当下其实无所谓是非真假。既然没有是非,就不必思虑;没有真假,就无须念念不忘又忧心忡忡。无是非真假,不就像在做梦一样了吗?是呀,就单纯地 把你的人生当成梦境去执行吧。

    (7)偶尔'俗气'...
      吃多了健康食品,偶尔你也想啃一啃鸭舌头和盐酥鸡。看多了大师名 剧,偶尔你也想瞄一瞄耳光摔不完眼泪掉不完的连续剧。听多了古典音乐,偶尔你也想唱一唱爱他一百年又恨他一万年的流行歌曲。你知道健康食品对健胃整肠有意 义,大师名剧对培养气质有意义,古典音乐对提升性灵有意义,可是,偶尔你其实并不想让自己时时刻刻活得那么有意。人生不需要把自己绑得那么紧。偶尔的小小 放纵,是道德的。灵气充满或许接近大人,但偶尔的俗气会更平易近人。

    (8)控制情绪 别浪费了~
      今天的你,是不开心的 你,因为有人在言语间刺伤了你。你不喜欢吵架,所以你离开;可是你只是离开了那,却没有离开被那人伤害的情境,因此你愈想愈生气。愈有气,你就愈没有力气 去理会别的事情,许多更该用心去做去想去处理的事件,就在你漫天漫地的心烦意乱之中,被轻忽被漠视被省略了。因为,你只是一心一意地在生气。在情绪上做文 章,这是对自己的浪费,而且是很坏的浪费。毕竟,生气也是要花力气的,而且生气一定伤元气。所以,聪明如你,别让情绪控制了你,当你又要生气之前,不妨轻 声地提醒自己一句:“别浪费了。”

    (9)抓住最好的时机 绝不错过
      你曾经买了一件很喜欢的衣裳却舍不得穿,郑重地供奉在 衣柜里;许久之后,当你再看见它的时候,却发现它已经过时了。所以,你就这样与它错过了。你也曾经买了一块漂亮的蛋糕却舍不得吃,郑重地供奉在冰箱里;许 久之后,当你再看见它的时候,却发现它已经过期了。所以,你也这样与它错过了。没有在最喜欢的时候上身的衣裳,没有在最可口的时候品尝的蛋糕,就像没有在 最想做的时候去做的事情,都是遗憾。生命也有保存期限,想做的事该趁早去做。如果你只是把你的心愿郑重地供奉在心里,却未曾去实行,那么唯一的结果,就是 与它错过,一如那件过时的衣裳,一如那块过期的蛋糕。

    (10)偶尔的出离轨道
      某次你搭火车打算到A地去,中途却忽然临时起意在B地下了车。也许是别致的地名吸引了你,也许是偶然一瞥的风景触动了你,总之,你就这样改变了本来预定的 行程,然后经历了一场充满惊奇的意外旅行。A地是你原先的目标,B地却让你体会了小小的冒险。回忆起来,你说,那是一次令你难忘的出轨经验。生命中的许多 时候不也如此?心无旁骛地奔赴唯一的目的,不过是履行了原本的行程而已;离开预设的轨道,你才有机会发现其他的风景。 

    (11)悄悄 悄悄地 回归平静..
       曾经有一段时间,你心情低落,甚至懒得拉开窗帘,看着窗外的阳光。因此你当然也忘了去看看,窗台上那一盆每天都需要喝水的玛格丽特。如此不知过了多久, 总算有一天,你度过了心情的低潮,同时也想起了你的玛格丽特。天啊,可怜的花,她还活着吗?你战战兢兢地拉开窗帘,却见她迎风招摇,花颜可掬。原来在过去 的这段日子里,你虽然忘了喂她喝水,老天却没忘了以雨露眷顾她呢。许多事物悄悄地在你的视线之外进行,而且悄悄地安排好了它们自己。天生万物,天养万物, 一切其实无须担心.

     

        你只要做的就是做好自己,不留任何遗憾...足矣。

         要拿这篇文章以此来借鉴自己,提醒自己

    Tag:
  •   态度决定思路,思路决定出路,不同的生活态度和思维方式会导致不同的结果。注重理财是一种积极的生活态度和思维方式。月光族则反映了一种消极的生活态度和思维方式。下面我们讲两个小故事。

      有一个举人进京赶考,住在一个客栈里。考试前两天,他做了三个梦。第一个梦,他梦见自己在墙上种了一棵白菜。第二个梦,他梦见自己在下雨天戴着斗笠,还打着伞。第三个梦,他梦见自己和心爱的表妹躺在一起,却是背靠背。这三个梦似乎有一些奥妙。举人第二天起来,就找算命先生解梦。

      算命先生劝告他赶紧回家。他这样解释道:高墙上种白菜,那不是白费劲吗?戴着斗笠打雨伞,那不是多此一举吗?和表妹躺在一张床上,却背靠背,那不是说明没戏吗?举人一听,心灰意冷,准备收拾东西回家。

      老板娘感到非常奇怪,便问:“你不是明天考试吗,怎么今天就回家了?”举人就如此这般说了一番。老板娘一听乐了,说:“我倒觉得你这次一定要留下来,定能高中。你想想,高墙上种白菜,不是说你这次高中吗?戴着斗笠打雨伞,不是说你有备无患吗?你和表妹背靠背躺在一起,不是说你翻身的时候就要到了吗?”举人一听,觉得更有道理,他就参加了考试,结果中了进士。

    Tag:
  • MFC结构框架 - [vc++] | 2010-10-10

    转自:http://hi.baidu.com/csdnail/blog/item/c4b0381748ca9a5df3de328d.html

    1) 在View中获得Doc指针2) 在App中获得MainFrame指针3) 在View中获得MainFrame指针4) 获得View(已建 立)指针5) 获得当前文档指针6) 获得状态栏与工具栏指针7) 获得状态栏与工具栏变量8) 在Mainframe获得菜单指针9) 在任何类中获得 应用程序类10) 从文档类取得视图类的指针(1)11) 在App中获得文档模板指针12) 从文档模板获得文档类指针13) 在文档类中获得文档模板 指针14) 从文档类取得视图类的指针(2)15) 从一个视图类取得另一视图类的指针

    VC中编程对于刚刚开始学习的同学,最大的障碍和问题就是消息机制和指针获取与操作。其实这些内容基本上是每本VC学习工具书上必讲的内容,而且通过MSDN很多问题都能解决。
    下面文字主要是个人在编程中指针使用的一些体会,说的不当的地方请指正。
    一般我们使用的框架是VC提供的Wizard生成的MFC App Wizard(exe)框架,无论是多文档还是单文档,都存在指针获取和操作问题。
    下面这节内容主要是一般的框架,然后再讲多线程中的指针使用。使用到的类需要包含响应的头文件。首先一般获得本类(视,文档,对话框都支持)实例指针this,用this的目的,主要可以通过类中的函数向其他类或者函数中发指针,以便于在非本类中操作和使用本类中的功能。

    1) 在View中获得Doc指针
    CYouSDIDoc *pDoc=GetDocument();一个视只能有一个文档。
    2) 在App中获得MainFrame指针
    CWinApp 中的 m_pMainWnd变量就是MainFrame的指针
    也可以:
    CMainFrame *pMain =(CMainFrame *)AfxGetMainWnd();
    3) 在View中获得MainFrame指针
    CMainFrame *pMain=(CmaimFrame *)AfxGetApp()->m_pMainWnd;
    4) 获得View(已建立)指针
    CMainFrame *pMain=(CmaimFrame *)AfxGetApp()->m_pMainWnd;CyouView *pView=(CyouView *)pMain->GetActiveView();
    5) 获得当前文档指针
    CDocument * pCurrentDoc =(CFrameWnd *)m_pMainWnd->GetActiveDocument();
    6) 获得状态栏与工具栏指针
    CStatusBar * pStatusBar= (CStatusBar *)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_STATUS_BAR);CToolBar * pToolBar=(CtoolBar *)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_TOOLBAR);
    7) 如果框架中加入工具栏和状态栏变量还可以这样
    (CMainFrame *)GetParent()->m_wndToolBar;(CMainFrame *)GetParent()->m_wndStatusBar;
    8) 在Mainframe获得菜单指针
    CMenu *pMenu=m_pMainWnd->GetMenu();
    9) 在任何类中获得应用程序类
    用MFC全局函数AfxGetApp()获得。

    10) 从文档类取得视图类的指针
    我 是从http://download.cqcnc.com/soft/program/article/vc/vc405.html学到的,从文档获得视 图类指针目的一般为了控制同一文档的多个视图的定位问题,我的体会特别是文字处理CEditView当产生多个视图类时,这个功能是非常需要的。
    CDocument类提供了两个函数用于视图类的定位:
    GetFirstViewPosition()和GetNextView()
    virtual POSITION GetFirstViewPosition() const;virtual CView* GetNextView(POSITION& rPosition) const;
    注意:GetNextView()括号中的参数用的是引用方式,因此执行后值可能改变。
    GetFirstViewPosition() 用于返回第一个视图位置(返回的并非视图类指针,而是一个POSITION类型值),GetNextView()有两个功能:返回下一个视图类的指针以及 用引用调用的方式来改变传入的POSITION类型参数的值。很明显,在Test程序中,只有一个视图类,因此只需将这两个函数调用一次即可得到 CTestView的指针如下(需定义一个POSITION结构变量来辅助操作):
    CTestView* pTestView;POSITION pos=GetFirstViewPosition();pTestView=GetNextView(pos);
    这 样,便可到了CTestView类的指针pTestView.执行完几句后,变量pos=NULL,因为没有下一个视图类,自然也没有下一个视图类的 POSITION.但是这几条语句太简单,不具有太强的通用性和安全特征;当象前面说的那样,当要在多个视图为中返回某个指定类的指针时,我们需要遍历所 有视图类,直到找到指定类为止。判断一个类指针指向的是否某个类的实例时,可用IsKindOf()成员函数时行检查,如:
    pView->IsKindOf(RUNTIME_CLASS(CTestView));
    即可检查pView所指是否是CTestView类。

    有了以上基础,我们已经可以从文档类取得任何类的指针。为了方便,我们将其作为一个文档类的成员函数,它有一个参数,表示要获得哪个类的指针。实现如下:
    CView* CTestDoc::GetView(CRuntimeClass* pClass){ CView* pView; POSITION pos=GetFirstViewPosition(); while(pos!=NULL){   pView=GetNextView(pos);   if(!pView->IsKindOf(pClass))   break; } if(!pView->IsKindOf(pClass)){   AfxMessageBox("Connt Locate the View.\r\n http://www.VCKBASE.com");   return NULL; } return pView;}

    其中用了两次视图类的成员函数IsKindOf()来判断,是因为退出while循环有三种可能:

    1.pos为NULL,即已经不存在下一个视图类供操作;
    2.pView已符合要求。

    1 和2同是满足。这是因为GetNextView()的功能是将当前视图指针改变成一个视图的位置同时返回当前视图指针,因此pos是pView的下一个视 图类的POSITION,完全有可能既是pos==NULL又是pView符合需要。当所需的视图是最后一个视图是最后一个视图类时就如引。因此需采用两 次判断。
    使用该函数应遵循如下格式(以取得CTestView指针为例):
    CTestView* pTestView=(CTestView*)GetView(RUNTIME_CLASS(CTestView));
    RUNTIME_CLASS是一个宏,可以简单地理解它的作用:将类的名字转化为CRuntimeClass为指针。
    至于强制类型转换也是为了安全特性考虑的,因为从同一个基类之间的指针类型是互相兼容的。这种强制类型转换也许并不必要,但能避免一些可能出现的麻烦。

    3.从一个视图类取得另一视图类的指针 综合1和2,很容易得出视图类之间互相获得指针的方法:就是用文档类作中转,先用1的方法得到文档类的指针,再用2的方法,以文档类的视图定位函数取得另一个视图类。同样,可以实现成一个函数:
    (假设要从CTestAView中取得指向其它视图类的指针)
    CView* CTestAView::GetView(CRuntimeClass* pClass){ CTestDoc* pDoc=(CTestDoc*)GetDocument(); CView* pView; POSITION pos=pDoc->GetFirstViewPosition(); while(pos!=NULL){   pView=pDoc->GetNextView(pos);   if(!pView->IsKindOf(pClass))   break; } if(!pView->IsKindOf(pClass)){   AfxMessageBox("Connt Locate the View.");   return NULL; } return pView;}
    这个函数和2中的GetView()相比,一是多了第一句以取得文档类指针,二是在GetFirstViewPosition()和GetNextView()前加上了文档类指针,以表示它们是文档类成员函数。
    有了此函数;当要从CTestAView中取得CTestBView的指针时,只需如下:
    CTestBView* pTestbView=(CTestView*)GetView(RUNTIME_CLASS(CTestBView));
    11) 对于单文档中也可以加入多个文档模板,但是一般的开发就使用MDI方式开发多文档模板,其方法与上述视图的获取方法很接近,这里稍做解释,如果不清楚,请 查阅MSDN,(以下四个内容(11、12、13、14)来源:http://sanjianxia.myrice.com/vc/vc45.htm)

    可以用CWinApp::GetFirstDocTemplatePostion获得应用程序注册的第一个文档模板的位置;
    利用该值来调用CWinApp::GetNextDocTemplate函数,获得第一个CDocTemplate对象指针。
    POSITION GetFirstDocTemplate( ) const; CDocTemplate *GetNextDocTemplate( POSITION & pos ) const;
    第二个函数返回由pos 标识的文档模板。POSITION是MFC定义的一个用于迭代或对象指针检索的值。通过这两个函数,应用程序可以遍历整个文档模板列表。如果被检索的文档模板是模板列表中的最后一个,则pos参数被置为NULL。

    12)一个文档模板可以有多个文档,每个文档模板都保留并维护了一个所有对应文档的指针列表。
    用CDocTemplate::GetFirstDocPosition函数获得与文档模板相关的文档集合中第一个文档的位置,并用POSITION值作为CDocTemplate::GetNextDoc的参数来重复遍历与模板相关的文档列表。函数原形为:
    viaual POSITION GetFirstDocPosition( ) const = 0; visual CDocument *GetNextDoc(POSITION & rPos) const = 0;  
    如果列表为空,则rPos被置为NULL.

    13)在文档中可以调用CDocument::GetDocTemplate获得指向该文档模板的指针。函数原形如下:
    CDocTemplate * GetDocTemplate ( ) const;
    如果该文档不属于文档模板管理,则返回值为NULL。

    14) 一个文档可以有多个视。每一个文档都保留并维护一个所有相关视的列表。CDocument::AddView将一个视连接到文档上,将该视加入到文档相联 系的视的列表中,并将视的文档指针指向该文档。当有File/New、File/Open、Windows/New或Window/Split的命令而将 一个新创建的视的对象连接到文档上时, MFC会自动调用该函数,框架通过文档/视的结构将文档和视联系起来。当然,程序员也可以根据自己的需要调用该函 数。
    Virtual POSITION GetFirstViewPosition( ) const; Virtual CView * GetNextView( POSITION &rPosition) cosnt;
    应 用程序可以调用CDocument::GetFirstViewPosition返回与调用文档相联系的视的列表中的第一个视的位置,并调用 CDocument::GetNextView返回指定位置的视,并将rPositon的值置为列表中下一个视的POSITION值。如果找到的视为列表 中的最后一个视,则将rPosition置为NULL.

    15)从一个视图类取得另一视图类的指针
    这个应用在多视的应用程序中很多见,一般如果自己在主程序或者主框架中做好变量记号,也可以获得,还有比较通用的就是用文档类作中转,以文档类的视图遍历定位,取得另一个视图类。这个功能从本文第10项中可以得到。

    这些资料大部分都是从网上和MSDN中获得的,写这个文档就是为了让大家不用再寻找,列出标题,可操作性更强。

    Tag:
  • 以前编程的时候不注意,光为了实现功能去啦,需要什么就用什么,程序编的不太简洁啊,这次进行大规模的测试的时候

    出现了空间不够的问题——out of memory,以前对这类问题总是置之不问,认为很难是硬件的原因,其实跟咱们编码

    有很大的关系:在matlab中要及时利用clear 变量1 变量2;clear all 的思想吧,或者更进一阶层就是直接在编码的时候

    考虑算法的有效性啊,不断思考 才能进步;遇到问题 才能成长!

     

    爱我别走啊! 加油

  • 工作的意义 - [新年随笔] | 2010-08-28

    工作的意义是什么?什么的工作能让自己感觉有意义?

     

    干有意义的事情,好好活着吧