Не получается создать вектор объектов класса

Мне нужно создать вектор из пар "weight, num", для этого сделан класс pair:

class pair
{
    int weight;
    int num;
};
vector <pair> spectre (A[0].size()); 
spectre[0].num = 1; 

Но выдает ошибку на <pair>: "pair не является однозначным". Подскажите, пожалуйста, что это значит и как это исправить?


Ответы (1 шт):

Автор решения: Harry

Это значит, что класс pair уже определен в стандартной библиотеке.

Если это имя вам дорого, не пишите using namespaсe std, и используйте или std::vector, и т.п., или вносите только нужные имена - типа,

using std::vector;
using std::cin;

Ну, или поместите свой класс в отдельное пространство имен...

Да, и все равно работать не станет - члены класса по умолчанию private, так что писать spectre[0].num = 1; не получится...

Если имя не дорого - то переименуйте, и дело с концом...

→ Ссылка