'다중 포인터 배열의 포인터'에 해당되는 글 1건

  1. 2007/09/14 다중 포인터 배열의 포인터 (2)
포인터를 공부했을때는 "많아도 이차원 포인터 이상을 쓸 일이 없겠지" 라는 생각을 한적이 있다. 얼마전까지도 그렇게 생각했었고 복잡한 포인터는 쓸 일이 없을꺼야 라고 얼마전까지 생각했었다.

하지만 어느 프로젝트를 진행중에 "이차원 포인터 배열의 포인터"를 한 함수에서 반환을 하고, 다른 함수에서 인자로 받는 코드를 작성해야 하는 경우가 발생했었다.
(이런식의 코딩은 해본적이 없어서 금방 코드가 작성되지 않았던..;;)

하지만 함수를 작성하고나서 생각한것은.. "이건 객체지향이 아니자나!!" _no

class CReceive
{
public:
  void ReceiveFunction(void* in)
  {
    m_data = (DataType* (*)[10][10])in;
  }

private:
  DataType* (*m_data)[10][10];
};

class CSend
{
public:
  void* SendFunction()
  {
    return (void*)m_data;
  }
private:
  DataType* m_data[10][10];
};

int main()
{
  CSend s;
  CReceive r;
  r.ReceiveFunction(s.SendFunction());

  return 0;
}


 
" DataType*(*)[10][10] " 이런식의 코딩이 가능하다는것을 알아냈다는것에 의의를 두자. (라고 자위하고 있다)

Posted by Mastojun