使用Constructor重新定义

使用Constructor重新定义,第1张

我无法理解为什么我要重新定义试图运行这个例子。有谁能告诉我?

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");
}

最佳答案:

1 个答案:

答案 0 :(得分:0)

  

Witaj Przemeku Na StackOverflow!

这个怎么样?:

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ębardziejmagformowaćkod! ;)

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复