首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

动态链接库里的函数为什么这么慢

2013-01-12 
动态链接库里的函数为何这么慢?听说c++的效率很高的,可是我的函数为何速度很慢,是我的代码写的不行吗?请高

动态链接库里的函数为何这么慢?
听说c++的效率很高的,可是我的函数为何速度很慢,是我的代码写的不行吗?
请高手检查修改!!!


#include<string>
#include<vector>
#include<sstream>
using namespace std;

string WX(string b1,string b2) {                            
     if((b1+b2=="金水")||(b1+b2=="木火")||(b1+b2=="水木")||(b1+b2=="火土")||(b1+b2=="土金"))
          return "SY";
else if((b1+b2=="金土")||(b1+b2=="木水")||(b1+b2=="水金")||(b1+b2=="火木")||(b1+b2=="土火"))
          return "SZ";  
else if((b1+b2=="金木")||(b1+b2=="木土")||(b1+b2=="水火")||(b1+b2=="火金")||(b1+b2=="土水"))
      return "KY";
else if((b1+b2=="金火")||(b1+b2=="木金")||(b1+b2=="水土")||(b1+b2=="火水")||(b1+b2=="土木"))
          return "KZ";
else if((b1+b2=="金金")||(b1+b2=="木木")||(b1+b2=="水水")||(b1+b2=="火火")||(b1+b2=="土土"))
          return "TT";
else      
          return "";
}

string FH1(vector<string> c1,vector<string>c2,vector<string>f4){        
 string n,o;
 int z=0;
 vector<string>::reverse_iterator p1=c1.rbegin();
 vector<string>::reverse_iterator p2=c2.rbegin();
 do

 n=(WX(*(p1+1),*p2))[0];                                
 o=(WX(*(p1+2),*(p2+1)))[0];                                 
     z++; 
    p1++; 
    p2++; 
} while((n==o)&&(n!="T")&&(o!="T"));    
vector<string>::iterator k=f4.begin();
 ostringstream oss;
  oss<<z;
  string q=oss.str(),f2;
  f2=(WX(*(p1+1),*p2))[0];
if(z<15)
  return "";

else  if(f2=="S"){
        if(*p1=="金")
               return q+*(k+0);
        if(*p1=="木")
       return q+*(k+1);         
        if(*p1=="水")
       return q+*(k+2);
        if(*p1=="火")
       return q+*(k+3);
        if(*p1=="土")
       return q+*(k+4);
 }
else  if(f2=="K"){
          if(*p1=="金")
                      return q+*(k+5);
          if(*p1=="木")
      return q+*(k+6);         


          if(*p1=="水") 
      return q+*(k+7);
          if(*p1=="火")
      return q+*(k+8);
          if(*p1=="土")
      return q+*(k+9);
}
  }
[解决办法]
string WX(string b1,string b2)
string FH1(vector<string> c1,vector<string>c2,vector<string>f4)
改為
string WX(string const &b1,string const &b2)
string FH1(vector<string> const &c1,vector<string>const &c2,vector<string>const &f4)

這樣速度就上去了。

热点排行