青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

2007年1月25日

今天無(wú)意中學(xué)到了一個(gè)小的知識(shí)點(diǎn),故趕緊寫(xiě)下來(lái)以防遺忘.
?在很多的對(duì)話框操作中,我們經(jīng)常要用到在一個(gè)對(duì)話框中調(diào)用另一個(gè)對(duì)話框的函數(shù)或變量.可以用如下方法來(lái)解決.
??? HWND hWnd=::FindWindow(NULL,_T("Sphere"));????? //得到對(duì)話框的句柄
? ?C***Dialog* pWnd= (C***Dialog*)FromHandle(hWnd); //由句柄得到對(duì)話框的對(duì)象指針
?? pWnd->xxx( );???????????????????????????????????????????? //調(diào)用C***Dialog中的函數(shù)xxx();

posted @ 2007-01-25 14:55 瘋蝶雨人 閱讀(4587) | 評(píng)論 (2)編輯 收藏


2007年1月16日

面向?qū)ο?就是,思考問(wèn)題的方法,以對(duì)象為主體,眼睛看什么都是對(duì)象
說(shuō)[對(duì)象],其實(shí)還是不好懂,因?yàn)檫@個(gè)概念是直接從英文翻譯過(guò)來(lái)的
對(duì)中國(guó)人也許說(shuō),面向東西,面向物體(抽象的物體),面向事物,之類的翻譯或許更好理解
為什么說(shuō)是面向?qū)ο竽?是為了和[面向過(guò)程]相對(duì)
以前[面向?qū)ο骫的程序概念等還沒(méi)有出來(lái)前
程序的設(shè)計(jì)都是在想怎樣才能一步一步的解決問(wèn)題,所以思維方式是過(guò)程,或是說(shuō)步驟,早期的C語(yǔ)言呀BASIC呀的都是,匯編就更是了
而[面向?qū)ο骫的基本是,如何設(shè)計(jì)一個(gè)個(gè)能動(dòng)的物體(OBJECT對(duì)象)他們有不同的功能,之后的問(wèn)題就是如何擺弄這些積木似的東西,相互組合調(diào)用各個(gè)對(duì)象的他們自己擅長(zhǎng)的功能(術(shù)語(yǔ)叫METHOD,方法),最后完成一個(gè)大的目的(當(dāng)然步驟,和過(guò)程,解決問(wèn)題的先后順序等,還是存在的)

為什么要面向?qū)ο蟮乃伎挤椒ê透拍?
是為了提高開(kāi)發(fā)效率
為什么能提高效率?因?yàn)槊嫦驅(qū)ο蟮脑O(shè)計(jì)中,都是在設(shè)計(jì)一個(gè)個(gè)的物件(OBJECT),共同的地方,可以重復(fù)利用
C語(yǔ)言也有庫(kù)什么的,為什么非要弄個(gè)新的,這么難懂的概念?
面向?qū)ο筮€有C語(yǔ)言等沒(méi)有的很多新的概念,如繼承,接口等,利用這些概念也可以提高開(kāi)發(fā)的效率,減少重復(fù)開(kāi)發(fā)
小的項(xiàng)目里也許體現(xiàn)不出來(lái)面向?qū)ο蟮膬?yōu)勢(shì)
大的項(xiàng)目就很有用了(也許只能在實(shí)際開(kāi)發(fā)中去體會(huì)了)

面向過(guò)程的開(kāi)發(fā),人迎合機(jī)器的工作方式
面向?qū)ο?人更多的去集中抽象現(xiàn)實(shí)中的問(wèn)題,以人的思維方式為本位,減少了對(duì)機(jī)器物理構(gòu)造或工作方式的迎合,可以用更多的經(jīng)歷去考慮怎么解決問(wèn)題,怎么實(shí)現(xiàn)某些功能

posted @ 2007-01-16 09:23 瘋蝶雨人 閱讀(496) | 評(píng)論 (1)編輯 收藏


2007年1月11日

最近在網(wǎng)上看到一個(gè)求解數(shù)學(xué)表達(dá)式程序,感覺(jué)很不錯(cuò),故拿出來(lái)修改之后供大家一起分享.
程序如下:
#include <ctype.h> //打開(kāi)庫(kù)文件
#include <stdio.h>
#include <iostream.h>
#include <malloc.h>
#include <process.h>
#include <string.h>

#define error 0
#define ok 1
typedef struct{
? int *base;
? int *top;
? int stacksize;
}sqstack;

class CExpression
{
public:
?CExpression();
?~CExpression();
public:
?void initstack(sqstack &s);
?int gettop(sqstack &s);
?void push(sqstack &s,int e);
?int pop(sqstack &s,int &e);
?int setfind(char a,char b[]); //查找a在b中的位置
?char precede(char op1,char op2,int &flag); //比較op1和op2的優(yōu)先級(jí)
??? int numlink(int opd,int ops,int &flag); //數(shù)字與字符串的連接
?int operate(int n1,char o,int n2,int &flag);//運(yùn)算
??????????? /*
??????????? flag為一個(gè)標(biāo)志變量,
??????????? 1為表達(dá)式有誤!除數(shù)為0!
??????????? 2為表達(dá)式的值過(guò)大或過(guò)小
??????????? 3為未知類型的錯(cuò)誤,可能沒(méi)有這一點(diǎn)
??????????? 但為了容錯(cuò),還是要加上這一點(diǎn)
?-*/
public:
?sqstack opnd;
?sqstack optr;
private:
?sqstack s;
};

CExpression::CExpression()
{
?s.top=s.base;
}

CExpression::~CExpression()
{
}

void CExpression::initstack(sqstack &s)
{
?s.base=(int *)malloc(10*sizeof(int));
?if(!s.base) exit(1);
?s.top=s.base;
?s.stacksize=100;
}

int CExpression::gettop(sqstack &s)
{
?int e;
?e=*(s.top-1);
?return e;
}

void CExpression::push(sqstack &s,int e)
{
??? if(s.top-s.base>=s.stacksize)
?{
??s.base=(int*)realloc(s.base,(s.stacksize+10*sizeof(int)));
??if(!s.base)
???exit(2);
??s.top=s.base+s.stacksize;
??s.stacksize+=10;
?}
?*s.top++=e;
}

int CExpression::pop(sqstack &s,int &e)
{
?if(s.top==s.base)return error;
?e=*--s.top;
?return ok;
}

int CExpression::setfind(char a,char b[])
{
?int i,j;
?i=-1,j=0;
?while(b[j]!='\0')
??if(a==b[j++]) {i=j-1;break;}
??return i;
}

char CExpression::precede(char op1,char op2,int &flag) //比較op1和op2的優(yōu)先級(jí)
{
?int i,j;
?char st1[8]={"+-*/()#"}; //運(yùn)算符初始化
?char st2[7][8]={">><<<>>",">><<<>>",">>>><>>", //比較操作初始化
??">>>><>>","<<<<<= ",">>>> >>","<<<<< ="};
?i=setfind(op1,st1);j=setfind(op2,st1);
?if (i>-1 && j>-1) //如果你所輸入的運(yùn)算符不在+-*/()#內(nèi),返回ERROR
?{return st2[i][j];flag=ok;}
?else flag=error;
?return error;
}

int CExpression::numlink(int opd,int ops,int &flag){ //數(shù)字與字符串的連接
?int aa=ops;
?ops=ops*10+opd-48;
?if (ops<0 && aa>0 || aa>214748364)
??flag=error; else flag=ok; //flag=0,說(shuō)明ops已經(jīng)過(guò)大,
?return ops;
}

int CExpression::operate(int n1,char o,int n2,int &flag){ //運(yùn)算
??????????? /*
??????????? flag為一個(gè)標(biāo)志變量,
??????????? 1為表達(dá)式有誤!除數(shù)為0!
??????????? 2為表達(dá)式的值過(guò)大或過(guò)小
??????????? 3為未知類型的錯(cuò)誤,可能沒(méi)有這一點(diǎn)
??????????? 但為了容錯(cuò),還是要加上這一點(diǎn)
?-*/
?
?int result=0;
?switch (o){
?case '+': //加法運(yùn)算
??flag=0;result=n1+n2;
??if (n1>=0 && n2>=0 && result<0 || n1<=0 && n2<=0 && result>0)
???//兩個(gè)大于0的數(shù)相加,和小于0,或兩個(gè)小于0的數(shù)相加,和大于0,返回錯(cuò)誤
??{flag=2;return error;}
??else
??{flag=0;return result;}
??break;
?case '-': //減法運(yùn)算
??flag=0;result=n1-n2;
??if (n1>=0 && n2<0 && result<0 || n1<=0 && n2>0 && result>0)
???//一個(gè)大于0的數(shù)減一個(gè)小于0 的數(shù),和小于0或一個(gè)小于0 的數(shù)減去一個(gè)大于0的數(shù),返回錯(cuò)誤
???
??{flag=2;return error;}
??else
??{flag=0;return result;}
??break;
?case '*': //乘法運(yùn)算
??flag=0;result=n1*n2;
??if (n1>=0 && n2>=0 && result<0 || n1<=0 && n2<=0 && result>0)
???//兩個(gè)大于0的數(shù)相乘,積小于0,或兩個(gè)小于0的數(shù)相乘,積大于0,返回錯(cuò)誤
??{flag=2;return error;}
??else
??{flag=0;return result;}
??break;
?case '/': //除法運(yùn)算
??if(n2!=0) //如果被除數(shù)為0要返加ERROR
??{flag=0;return n1/n2;break;}
??else
???//除數(shù)為0,返回錯(cuò)誤
??{flag=1;return error;break;}
?}
?flag=3;return error;
}

void main()
{
?CExpression expression;
//?sqstack opnd; //用于存放運(yùn)算數(shù)
//?sqstack optr; //用于存放運(yùn)算符
?int theta; //用于存放一個(gè)運(yùn)算符
?int a,b; //用于存放用于操作的兩個(gè)數(shù)
?int temp; //一個(gè)臨時(shí)的變量
?int flag2=0; //一個(gè)標(biāo)志變量,用于判斷是否要連接數(shù)字
?int flag1; //一個(gè)標(biāo)志變量,用于判斷表達(dá)式是否是無(wú)效的
?int cn=0; //用于存放字符的位置
?int ops=0; //用于存放當(dāng)前的操作數(shù)
?char st1[255]; //表達(dá)式中最多有255個(gè)字符
?char c; //用于表示當(dāng)前的字符
?for (a=0;a<255;a++) st1[a]='#'; //對(duì)數(shù)組初始化
?expression.initstack(expression.opnd); //對(duì)棧OPND初始化
?expression.initstack(expression.optr); //對(duì)棧OPTR初始化
?expression.push(expression.optr,'#');
?cin>>st1;
?temp=strlen(st1);
?if (st1[temp-1]!='#') st1[temp]='#'; //對(duì)表達(dá)式的結(jié)尾加入一個(gè)#
?
?c=st1[0];
?while(c!='#' || expression.gettop(expression.optr)!='#'){ //cout<<st1;
??
??c=st1[cn];
??if(isdigit(c)) {
???ops=expression.numlink(c,ops,temp);
???if (temp==ok)
???{
????if (flag2) expression.pop(expression.opnd,temp);
????flag2=1;
????expression.push(expression.opnd,ops);
????cn++;
????continue;
???}
???else
???{cout<<"表達(dá)式的值過(guò)大,無(wú)法計(jì)算!"<<endl;return;}
??}
??else{
???ops=0;
???flag2=0;
???temp=expression.precede(expression.gettop(expression.optr),c,temp); //temp為precede中的一個(gè)代號(hào),為ok為正確的運(yùn)算符比較,為error為錯(cuò)誤的運(yùn)算符比較
???if (temp==error) {cout<<"表達(dá)式有誤!無(wú)法求解!"<<endl;return;} //錯(cuò)誤的運(yùn)算符比較時(shí),返回.
???switch (temp){
???case '<':
????expression.push(expression.optr,c);cn++;break; //如果為<,操作符入棧
???case '=':
????expression.pop(expression.optr,temp);cn++;break; //如果為=,操作符出棧
???case '>': //如果為>,執(zhí)行運(yùn)算操作
????expression.pop(expression.optr,theta);
????expression.pop(expression.opnd,b);
????expression.pop(expression.opnd,a);
????expression.operate(a,theta,b,flag1);
????if (flag1==1) {cout<<"表達(dá)式有誤!除數(shù)不能為0!"<<endl;return;}
????else if(flag1==2) {cout<<"表達(dá)式的值過(guò)大或過(guò)小,無(wú)法計(jì)算!"<<endl;return;}
????else if(flag1==3) {cout<<"未知道類型的錯(cuò)誤!"<<endl;return;}
????expression.push(expression.opnd,expression.operate(a,theta,b,flag1));
????break;
???case ' ':
????cout<<"表達(dá)式有誤!無(wú)法求解!"<<endl;return;
???} //end switch
??} //end if
?} //end while
?a=expression.gettop(expression.opnd);
?cn=0;
?while(st1[cn]!='#') cout<<st1[cn++]; //輸出你所輸入字符串
?cout<<"=";
?cout<<a<<endl; //輸出最終結(jié)果
}

該程序的缺點(diǎn)是不能處理存在小數(shù)的表達(dá)式.

posted @ 2007-01-11 09:34 瘋蝶雨人 閱讀(1091) | 評(píng)論 (0)編輯 收藏


2007年1月10日

一直以來(lái),都想找一些好的網(wǎng)站來(lái)學(xué)習(xí),可一直沒(méi)有如愿,今天終于找到這樣的網(wǎng)站了.在這里要謝謝★Rosina★,是她介紹給我的.非常感謝!!!

posted @ 2007-01-10 15:15 瘋蝶雨人 閱讀(250) | 評(píng)論 (1)編輯 收藏


僅列出標(biāo)題  

posts - 4, comments - 4, trackbacks - 0, articles - 0

Copyright © 瘋蝶雨人

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美制服丝袜| 欧美国产免费| 午夜精品久久久久久久男人的天堂| 欧美精品一区二区三区高清aⅴ| 亚洲激情在线观看| 亚洲最新视频在线播放| 欧美日韩调教| 午夜在线视频观看日韩17c| 性欧美办公室18xxxxhd| 一区福利视频| 亚洲欧洲美洲综合色网| 欧美日韩福利视频| 亚洲欧美视频在线观看| 欧美在线|欧美| 亚洲国产精品一区二区尤物区 | 国产一区二区三区免费不卡| 久久久久免费| 欧美国产日本高清在线| 亚洲在线观看| 久久久夜精品| 亚洲视频在线观看| 欧美一区亚洲二区| 亚洲精品在线免费| 午夜精品久久久久久久久久久久 | 亚洲乱码国产乱码精品精98午夜| 亚洲另类一区二区| 国产伦精品一区二区三区在线观看| 久久一区二区三区国产精品| 欧美韩国在线| 久久精品成人一区二区三区蜜臀| 久久野战av| 香蕉久久一区二区不卡无毒影院| 久久久99久久精品女同性| 99精品福利视频| 欧美在线视频免费播放| 亚洲四色影视在线观看| 久久久久久久欧美精品| 亚洲欧美影音先锋| 欧美电影免费观看| 噜噜爱69成人精品| 国产精品欧美风情| 亚洲精品久久久久久久久久久| 国产视频一区三区| 亚洲视频久久| 一本色道久久综合亚洲91| 久久理论片午夜琪琪电影网| 午夜精品亚洲| 欧美日韩在线一二三| 欧美电影免费观看大全| 国产在线欧美日韩| 亚洲欧洲99久久| 午夜精品短视频| 欧美丝袜第一区| 亚洲三级免费电影| 亚洲看片免费| 你懂的亚洲视频| 亚洲成色精品| 亚洲国产91| 久久免费的精品国产v∧| 久久久国产91| 国产一区999| 欧美专区18| 久久蜜桃资源一区二区老牛| 国产丝袜一区二区| 亚洲女女做受ⅹxx高潮| 亚洲一区一卡| 国产精品久久久久久影视| 一区二区三区久久网| 亚洲专区在线| 国产精品欧美精品| 亚洲欧美乱综合| 久久se精品一区二区| 国产亚洲人成a一在线v站| 午夜一级久久| 久久综合久久综合九色| 揄拍成人国产精品视频| 卡通动漫国产精品| 亚洲激情第一区| 亚洲专区国产精品| 国产日韩一区欧美| 久久视频精品在线| 亚洲日韩欧美视频一区| 亚洲欧美日韩中文播放| 国产美女精品在线| 久久久亚洲精品一区二区三区| 免费日韩av片| 在线视频亚洲欧美| 国产欧美91| 欧美不卡高清| 亚洲免费中文| 久久婷婷综合激情| 一本久道久久久| 国产精品无码永久免费888| 久久精品国产免费| 亚洲国产一区二区a毛片| 亚洲免费人成在线视频观看| 国产日韩av在线播放| 久久综合影音| 亚洲一区二区精品视频| 欧美aa在线视频| 亚洲永久在线| 亚洲第一搞黄网站| 国产精品久久久久久久久久免费看| 性18欧美另类| 亚洲精品在线视频观看| 久久国产一区| 一区二区三区鲁丝不卡| 狠狠久久亚洲欧美| 欧美日本精品| 久久午夜色播影院免费高清| 在线亚洲免费| 亚洲国产精品毛片| 久久精品欧洲| 亚洲一区免费网站| 亚洲精选一区二区| 久久精品国产77777蜜臀| 亚洲美女电影在线| 国语自产偷拍精品视频偷| 欧美久久久久久蜜桃| 久久欧美中文字幕| 亚洲欧美日韩人成在线播放| 亚洲黄色小视频| 老牛影视一区二区三区| 欧美一区久久| 亚洲免费在线| 日韩视频中文| 亚洲精品极品| 亚洲人成久久| 韩国三级在线一区| 国产欧美韩国高清| 欧美午夜精品久久久久久浪潮| 麻豆成人在线观看| 久久成人免费| 亚洲影院色无极综合| 亚洲三级免费观看| 欧美系列电影免费观看| 欧美成年人视频网站| 久久夜色精品国产亚洲aⅴ| 夜夜爽av福利精品导航| 亚洲第一在线视频| 久久久噜噜噜久噜久久| 一区二区三区鲁丝不卡| 最新国产拍偷乱拍精品| 欲色影视综合吧| 国产精品视频大全| 欧美激情按摩| 久久岛国电影| 亚洲午夜久久久| 99精品视频免费观看| 99视频国产精品免费观看| 欧美超级免费视 在线| 欧美一区二区三区免费大片| 国产精品99久久99久久久二8| 亚洲国产成人一区| 国内免费精品永久在线视频| 欧美日韩一区二区在线播放| 欧美精品91| 欧美日韩亚洲高清| 欧美成人久久| 久久久九九九九| 午夜日韩福利| 欧美影院成年免费版| 午夜精品国产更新| 久久av一区| 欧美大秀在线观看| 国产精品国产三级国产| 国产亚洲精久久久久久| 伊人精品视频| 亚洲视频碰碰| 久久久99久久精品女同性| 老司机凹凸av亚洲导航| 亚洲精品国产精品国自产观看浪潮 | 国产区二精品视| 亚洲国产精品va| 一本大道久久a久久综合婷婷| 亚洲欧美文学| 欧美福利视频| 亚洲综合二区| 欧美freesex交免费视频| 欧美日韩综合视频网址| 国产在线高清精品| 一区二区三区视频免费在线观看| 午夜精品影院在线观看| 欧美二区不卡| 欧美亚洲一区| 欧美日韩精品中文字幕| 国产一区二区福利| 国产精品99久久久久久久vr| 久久一区免费| 一区二区三区视频在线| 久久综合久久综合九色| 国产精品午夜国产小视频| 91久久精品一区二区三区| 欧美一区二区三区另类| 亚洲全部视频| 久久亚洲精品网站| 国产欧美综合一区二区三区| 一本色道久久99精品综合| 欧美/亚洲一区| 欧美一级一区|