leetcode 705,为什么执行出错呢?

 class MyHashSet {
public:
    /** Initialize your data structure here. */
    MyHashSet() {

    }

    void add(int key) {
        if (v[key] == 0)
            ++v[key];
    }

    void remove(int key) {
        if (v[key] > 0)
            --v[key];
    }

    /** Returns true if this set did not already contain the specified element */
    bool contains(int key) {
        if (v[key] > 0)
            return true;
        return false;
    }

private:

vector<int> v;    
};

/**
 * Your MyHashSet object will be instantiated and called as such:
 * MyHashSet obj = new MyHashSet();
 * obj.add(key);
 * obj.remove(key);
 * bool param_3 = obj.contains(key);
 */
 #include <iostream>
#include <vector>

using namespace std;

class MyHashSet {
private:
vector<int> v;    //这个放在前面,否则找不到定义
public:
    /** Initialize your data structure here. */
    MyHashSet() {

    }

    void add(int key) {
        if (v[key] == 0)
            ++v[key];
    }

    void remove(int key) {
        if (v[key] > 0)
            --v[key];
    }

    /** Returns true if this set did not already contain the specified element */
    bool contains(int key) {
        if (v[key] > 0)
            return true;
        return false;
    }


};
int main()
{
}
没明白楼主的描述?
/**
 * Your MyHashSet object will be instantiated and called as such:
 * MyHashSet obj = new MyHashSet();
     * obj.add(key);    //你这里的key的定义呢?///////////////////
 * obj.remove(key);
 * bool param_3 = obj.contains(key);
 */