最近在搞jni, 所以又撿起了c++, java 和c++都是類c的語言, 所以相似度還是很高的, 這就導致了某些地方窩老是搞混, 比如類的實例化。
c++: | java:
class A{ | public class A{
public: | public A(int i){};
A(int i){}; | public A(int i, int j){};
A(int i, int j){}; | public A(){};
A(){}; |
} | }
java:
A a = new A();
c++:
A* a = new A(); //分配內存在堆區
//A a(); 這種不能這么寫,應為這樣會讓編譯起以為這是一個函數的聲明
//以下都是分配內存在棧區
A a = 1;
A a = A(1);
A a = A(1, 2);
A a(1, 2);