4

http://msdn.microsoft.com/en-us/library/windows/desktop/dd389098(v=vs.85).aspxで COM サンプルを読んでいます。

私は本当に理解できません (void **) で

hr = pGraph->QueryInterface(IID_IMediaControl, (void **)&pControl);

そのため、クラスによってさまざまなタイプのポインターによって返される値をいくつか試しました

class Point{
private:
    int x, y;
public:
    Point(int inputX, int inputY){x = inputX, y = inputY;}
    int getX(){return x;}
    int getY(){return y;}
    friend ostream& operator << (ostream &out, Point &cPoint);
    Point operator-(){
        return Point(-x, -y);
    }
};

ostream& operator << (ostream &out, Point &cPoint){
    return out<< "(" << cPoint.x << ", " << cPoint.y << ")";
}

そしてプリントアウト

Point *p = new Point(1,2);
cout << p << endl << &p << endl << endl
<< *&p << endl<< **&p << endl<<endl 
<< (void *) &p << endl << (void **) &p ;

(void*) は (void **) とまったく違いはありません。(void **)&pControl は何を返したいですか?

4

1 に答える 1