I have a class Priority Queue with method push() which takes two args: value and priority.
#include <vector>
#include <iostream>
class PriorityQueue
{
private:
    std::vector<std::pair<int, int>> _queue;
public:
    int top();
    int pop();
    void push(int, int);
    int size();
    PriorityQueue();
    PriorityQueue(int, int);
    friend std::ostream& operator<<(std::ostream&, PriorityQueue&);
};
How can I overload [] operator for it to work like this:
queue[priority]=value;
should mean
queue.push(priority, value);
?
 
     
    