C++&&Objective-c

1.两种语言的指针和引用

C++中引用和指针是两个不同的概念

Objective底层是用C++实现的,其对象访问机制是C++中的指针访问对象,所以如果直接访问Objective-C中的变量是需要用对象名->变量名

如果在OC中定义了@property a这里生成的知识get和set方法,外界并不能直接访问a,因为a默认是私有的

但是可以在interface中加上@public  int a;

这样a就可以让外接直接访问,可以用->访问了

2.C++创建对象的一些问题

----说明:::c++创建的对象有可能在队里,有可能在栈里.在栈里的对象是由系统接管,不需要我们手动释放内存

而由于堆是匿名的并且需要手动释放对象,所以创建堆对象时,应该用一个指针指向他

----解释1:::Person *p = new Person;或者Person *p = new Person();或者Person *P = new Person(12);等等这些用new关键字创建的对象是放在堆内存里的,所以需要手动释放,delete p;即可释放指针p指向的对象

P.S.用new关键字创建的对象返回的是该对象的指针,所以等是左边是指针变量

而Person p;等不用new关键字创建的对象释放在栈内存中的,不需要手动管理

原文地址:https://www.cnblogs.com/xyzaijing/p/3617245.html