C++中,必须定义构造函数,否则在声明实例的时候出错。不会给你生成默认的构造函数A(),所以在声明实例:A a(报错)。
Java中,当自己没有定义构造函数时,编译器会给补上一个默认的构造函数A(),声明实例:A a(不会报错)。
但是如果我们已经定义了自己的含参的构造函数,则编译器不再给生成默认构造函数,此时声明实例:A a(报错)。
讲的比较清楚:Java 与 C++ 创建对象
C++中,必须定义构造函数,否则在声明实例的时候出错。不会给你生成默认的构造函数A(),所以在声明实例:A a(报错)。
Java中,当自己没有定义构造函数时,编译器会给补上一个默认的构造函数A(),声明实例:A a(不会报错)。
但是如果我们已经定义了自己的含参的构造函数,则编译器不再给生成默认构造函数,此时声明实例:A a(报错)。
讲的比较清楚:Java 与 C++ 创建对象