コンストラクタでのメンバ変数が配列だったときの初期化の方法.

今回迷ったコード

#include 
using namespace std;

class PartSum {
public:
  PartSum(int* array, int count, int cond) : m_count(count)
  {
    //m_array = array とやってしまうと、arrayをいじくることにより、メンバ変数m_arrayも代わってしまうので、止めた方がいい.
    //今回はm_arrayを新しい領域を作ることでコピーしてしまう。でも、作るのが無駄な気がする.
    m_array = new int[count];
    m_cond = cond;
    for(int i = 0; i < count; i++) {
      m_array[i] = array[i];
    }
  }
  ~PartSum()
  {
    delete[] m_array;   //動的に配列を作ったので、明示的に破棄しなくては。
  }

private:
  int* m_array;
  const int m_count;
  int m_cond;
};

でも、青字で、

const int* m_array

なんていう風にしたい時、初期化の仕方がよくわからない.

2011.04.07追記
どうやらできないくさい。
vector使えばいいみたいだけど.