作者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