使用构造函数重新定义

Redefinition using Constructor

我不明白为什么我要重新定义 运行 这个例子。谁能告诉我?

using namespace std;

class Base {
        protected: int *value;
        public: Base() { 
           value = new int, 
          *value = 1; 
        };
        Base(int &n) { 
            value = new int[n]; 
        }
};

int main() {
        int x=2;
        Base zm;
        Base(x);
        system("Pause");
}

Witaj Przemeku Na Whosebug!

这个怎么样?:

class Base {
        protected: int *value;
        public: 
        Base() { 
           value = new int, 
          *value = 1; 
        };
        Base(int &n) { 
            value = new int[n]; 
        };
};

int main()
{
        int x;
        x = 2;
        Base base;
        base = Base(x); <--- fix
        return 1;
}

Proszę bardziej formatować kod! ;)