1--new
c++
int * p = new int[m]; //一唯
A** ga = new A*[m]; //二维
for(int i = 0; i < m; i++)
ga[i] = new A[n];
...
for(int i = 0; i < m; i++)
delete []ga[i];
delete []ga;
Java
int p[] = new int[m]; //一唯
Integer[][] map = new Integer[m][n]; //二维
2--string与String
相同点:string对象和String对象都可以使用 “+”连接
区别:
1) String对象无[]操作
2) StringBuider和StringBuffer无“+”连接,使用append连接
3--NULL与null
C++中空指针为NULL,或者nullptr,或者为0
Java中空对象为null
4--各种容器函数比较
1)stack(c++)和Stack(java)
a)取栈顶元素,top(c++)和peek(java)
b)pop(c++)不返回值,需要用top,而pop(java)返回值
2)quue(c++)和Queue(java)
a)查看首元素,front(c++)
peek(java),无元素,返回null
element,无元素,抛出异常
b)加入元素,push(c++)
offer(java)
c)c++:
弹出元素,pop(c++)不返回该值
java:
poll(java),返回该值,空集返回,null
而remove,空集抛出异常