作者ctyro (初學者)
看板C_and_CPP
標題[問題] C++中拷貝的問題
時間Sat May 9 18:06:13 2009
#include<iostream>
#include<vector>
#include<ctime>
using namespace std;
class Fraction{
public:
int p1;
int p2; //分數的class p1分子 p2分母
};
class Complex{
public:
int p1;
int p2; //定義複數 p1分子 p2分母
};
template<class T>
void NewElement(){
T x1;
srand(time(NULL));
x1.p1=rand()%99+1; //樣板 隨機產生複數或分數
x1.p2=rand()%99+1;
}
int main(){
vector<Fraction> fraction(8);
vector<Fraction>::iterator fraction_iterator;
vector<Complex> complex(8);
vector<Complex>::iterator complex_iterator;
for(fraction_iterator=fraction.begin();
fraction_iterator!=fraction.end(); fraction_iterator++){
NewElement<Fraction>();
*fraction_iterator=x1; //我的問題在這行 我想把NewElement中的分數
//拷貝到
} //fraction中 可是不能這樣做
//我該如何寫是好
for(complex_iterator=complex.begin(); complex_iterator!=complex.end();
complex_iterator++){
NewElement<Complex>(); //同上 問題在這行 我想把NewElement的複數拷貝到
*complex_iterator=x1; //complex中 可是不能這樣做
} //應該如何寫
system("PAUSE");
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 134.208.2.65
※ 編輯: ctyro 來自: 134.208.2.65 (05/09 18:09)
1F:推 littleshan: C++ 的 function 可以用 return 回傳東西,很方便唷XD 05/09 18:27
2F:→ ctyro:物件也能傳回來嗎? 05/09 18:34
3F:推 littleshan:你怎麼不試試看? 05/09 19:39
4F:→ ctyro:真的可以 我太要求別人直接給我答案了 謝謝你 05/09 19:42
5F:→ ctyro:我總抱著C的思維 = = 05/09 19:42