全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1428
推到 Plurk!
推到 Facebook!

怎ㄇ用vector所建立ㄉarray 傳遞到function

尚未結案
joen0000
一般會員


發表:47
回覆:47
積分:18
註冊:2004-11-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-23 01:45:26 IP:61.230.xxx.xxx 未訂閱
各位大大你好: ex:
int n=3;
vector > array;         // 兩個'>'間要有空白
    array.resize(n);
    for(unsigned int i = 0; i < n;i  )
        array[i].resize(n);
    // 手動指定nxn的陣列    
現在已經宣告3*3ㄉ陣列 如何把這3*3ㄉ陣列當functionㄉ參數ㄋ?? 如 function(xxxx ) ~~~~~==>xxxx我所要ㄉ
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-23 03:17:55 IP:211.76.xxx.xxx 未訂閱
joen0000你好:     使用pass by reference..
void function(vector >& array)
{
    ...
}
joen0000
一般會員


發表:47
回覆:47
積分:18
註冊:2004-11-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-23 10:13:18 IP:61.230.xxx.xxx 未訂閱
int ComputeFloydAPSP(vector >&, int );function原形     void __fastcall TForm1::Button1Click(TObject *Sender)
{     int n,i,h,j;
 int k=0;
 TStringList *str =new TStringList();
 str->LoadFromFile(Edit1->Text);
 Memo1->Text=str->Text;
 str->CommaText=str->Text;
 h= StrToInt(str->Count)+1;
 n= sqrt(h);
  vector > array;         // 兩個'>'間要有空白
  array.resize(n);
    for(unsigned int i = 0; i < n;i++)
        array[i].resize(n);
  for(i=0;iStrings[k]);
          k++;
    Memo2->Lines->Text=Memo2->Lines->Text+IntToStr(array[i][j]);        }     Memo2->Lines->Add("");      }
 int ComputeFloydAPSP(array, n);呼叫     }
int ComputeFloydAPSP(vector >& array, int n)functiob主體
{
  int k,i;
  for (k=0; kMemo3->Lines->Text=Form1->Memo1->Lines->Text+IntToStr(array[i][j]);
    }
     Form1->Memo3->Lines->Add("");
  }
 return 0;
}
我還寫fuctionㄉ地方錯ㄌ嗎???
joen0000
一般會員


發表:47
回覆:47
積分:18
註冊:2004-11-07

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-24 10:52:08 IP:61.230.xxx.xxx 未訂閱
引言: ex: 實做vector動態二維陣列 ㄉ傳遞
void ComputeFloydAPSP(vector >&, int );function原形     void __fastcall TForm1::Button1Click(TObject *Sender)
{     int n,i,h,j;
 int k=0;
 TStringList *str =new TStringList();
 str->LoadFromFile(Edit1->Text);
 Memo1->Text=str->Text;
 str->CommaText=str->Text;
 h= StrToInt(str->Count) 1;
 n= sqrt(h);
  vector > array;         // 兩個'>'間要有空白
  array.resize(n);
    for(unsigned int i = 0; i < n;i  )
        array[i].resize(n);
  for(i=0;iStrings[k]);
          k  ;
    Memo2->Lines->Text=Memo2->Lines->Text IntToStr(array[i][j]);        }     Memo2->Lines->Add("");      }
 ComputeFloydAPSP(array, n);呼叫     }
void ComputeFloydAPSP(vector >& array, int n)functiob主體
{
  int k,i;
  for (k=0; kMemo3->Lines->Text=Form1->Memo3->Lines->Text IntToStr(array[i][j]);
    }
     Form1->Memo3->Lines->Add("");
  }    }
發表人 - joen0000 於 2005/03/24 10:40:53
系統時間:2024-05-19 0:08:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!