矢量將點指向矩形。我希望能夠取最低和最高的複數,並將其分配給2個不同的複數。我只嘗試了下面的最低點,但它似乎沒有找到最低點,只是返回第一個元素。從矢量中提取最低複數
vector < complex<double>* > xs;
typedef typename vector < complex<double>* >::iterator Iter;
xs.push_back(&pointa);
xs.push_back(&pointb);
xs.push_back(&pointc);
xs.push_back(&pointd);
for (Iter p = xs.begin(); p != xs.end(); ++p)
{
if((*p)->real()<(*p+1)->real() && (*p)->imag()<(*p+1)->imag())
{
double a = (*p)->real();
double b = (*p)->imag();
complex <double> botleft_1(a,b);
}
else
{
}
}
有什麼建議嗎?
如何格式化你的代碼? –
我想你需要澄清你的意思是「最低複數」。你如何希望比較兩個複數? | U | <| v |? – voltrevo
爲了在數學上正確,不存在最低複數(它們不具有可比性)。你到底在找什麼?也許你想要的是模數最低的數字? –