структура с 2 ячейками против std :: pair? [Дубликат]

Возможный дубликат:
В чем разница между использованием структуры с двумя полями и парой?

Дорогие все,

У меня есть маленький вопрос о парах и структуре. Есть ли преимущество в использовании std :: pair вместо структуры с двумя ячейками? Некоторое время я использовал пары, но главная проблема заключается в удобочитаемости: если вы хотите представить, например, duple (int "label", double "value"), вы можете использовать либо:

typedef std::pair<int,double> myElem;

или

typedef struct {
    int label;
    double value;
} myElem;

Код становится более читабельным, если ваши операторы имеют «семантический» смысл (вы всегда будете знать, что такое x.label. Это не относится к x.first).

Тем не менее, я думаю, что есть преимущество в использовании пары. Это более производительный или что-то еще?

Ответы на вопрос(5)

Ваш ответ на вопрос