2016-06-20 119 views
-1

我想存儲沒有。圖形的座標,需要成對分配。我如何動態地分配成對的「n」個座標?動態分配no。的值來配對對象

+1

通過任何可能的手段。例如,使用'std :: vector'或operator'new'。 – Ari0nhh

+0

['std :: vector'](http://en.cppreference.com/w/cpp/container/vector)和['std :: pair'](http://en.cppreference.com/w/) cpp/utility/pair)或許? –

+0

我的意思是如何使用std :: pair輸入多組值? –

回答

0

實例化的std ::對,你可以使用:

std::pair<int, double> p2(42, 0.123); 
std::cout << "Initialized with two values: " 
      << p2.first << ", " << p2.second << '\n'; 

而對於向量:

std::vector<int> second (4,100); 

(這行創建4 int型的載體,用價值100我讓你猜你能做什麼?)

std::vector<int> third (second.begin(),second.end()); 

這一個迭代另一個向量。有創意,不要猶豫,看看文檔! (還有,請檢查operator new的文檔如果要動態地創建它,你會需要它:))。

0

您可以使用此:

#include <iostream> 
using namespace std; 
#include <vector> 

void doSomething(){ 
    int x = 1, y= 3; 
    // vector of the graph's points 
    vector<pair<int, int>> graph; 
    // add point to the vector 
    graph.push_back(make_pair(x, y)); 
    // accessing a point // here accessing first point at index 0 
    // you can loop through the vector when having many points 
    cout<<"x = "<< graph.at(0).first <<endl; 
    cout<<"y = "<< graph.at(0).second <<endl; 
}