C++的new 和 JAVA的new 返回的东西是不同的。
1.C++的new 返回的是一个地址
2.JAVA的 new 返回的是一个引用。
例如有一个类:(C++与java定义类也稍微有些不同,C++中括号后是有;的,JAVA没)
class T
{
int num;
};//java的话是没有这个冒号的
//C++
class T
{
public:
int num;
};
int main()
{
T *p = new T();
T->num = 1;
return 0;
}
class T
{
int num;
}
class Main()
{
public static void main(String[] args)
{
T t1 = new T();
t1.num = 1;
}
}
可以看出,C++用 new 返回的是一个指针,而JAVA的new返回的则是一个引用。JAVA中没有指针,而引用的作用跟指针相似,指向引用的一块内存地址,但使用方法跟对象本身类似,但不是完全相同。