在C++中,alloc init
和new
都可以用于内存分配和对象初始化,但它们之间存在一些差异。
new
是C++中的运算符,它会自动调用operator new
函数来分配内存,然后调用对象的构造函数来初始化对象。new
运算符返回一个指向新分配和初始化的对象的指针。
alloc init
是Objective-C中的方法,它用于分配和初始化对象。alloc init
分为两步:首先,alloc
方法会分配内存,然后init
方法会在分配的内存上调用构造函数来初始化对象。
在大多数情况下,使用alloc init
或new
都可以正确地分配和初始化对象。但是,alloc init
只能用于Objective-C对象,而new
只能用于C++对象。
总之,如果您正在使用Objective-C,则应使用alloc init
来分配和初始化对象。如果您正在使用C++,则应使用new
运算符来分配和初始化对象。
领取专属 10元无门槛券
手把手带您无忧上云