Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 未设置iOS中的NSData属性_Objective C - Fatal编程技术网

Objective c 未设置iOS中的NSData属性

Objective c 未设置iOS中的NSData属性,objective-c,Objective C,在我的.h文件中 @property (strong, nonatomic) NSMutableData* dpBytes; 英寸 @synthesize dpBytes; NSData *bytesData = cm.msgBytes;//bytes [fr.dpBytes appendData:bytesData]; 但是fr.dpBytes长度是0 我做错了什么?fr.dpBytes=[[NSMutableData alloc]init] 然后 [fr.dpBytes appen

在我的.h文件中

 @property (strong, nonatomic) NSMutableData*  dpBytes;
英寸

@synthesize dpBytes;

NSData *bytesData = cm.msgBytes;//bytes
[fr.dpBytes appendData:bytesData];
但是fr.dpBytes长度是0


我做错了什么?

fr.dpBytes=[[NSMutableData alloc]init]

然后


[fr.dpBytes appendData:bytesData]
fr.dpBytes=[[NSMutableData alloc]init]

然后


[fr.dpBytes appendData:bytesData]

@aksh1:你的答案在几个地方都错了。这个答案是正确的。“您需要先为指针
*bytesData
分配空间”-不,指针已经分配了。它是指针指向的对象,需要分配和初始化。此外,如果要附加到实例中,则需要一个
NSMutableData
实例。此外,
bytesData=cm.msgBytes
完全是错误的,它会泄漏内存(通过松开指向先前分配对象的指针),这无助于解决问题,
cm.msgBytes
如果没有初始化,仍然是
nil
。@H2CO3我一点也没有错,他必须在使用append之前初始化NSMutableData,他问那里出了什么问题,我告诉他,我以为他知道cm.msgBytes是怎么回事。你不能告诉我我错了,但你可以告诉我我的回答不完整:)。@soryngod没有。你回答中的代码不正确<代码>NSData*字节数据=[[NSData alloc]init];字节数=厘米毫秒字节
只会导致内存泄漏,它不会初始化
cm.msgBytes
。此外,您仍然不需要“为指针分配内存”,因为您已经通过将指针声明为本地变量或实例变量为指针本身分配了内存。您需要内存来存储底层对象。@H2CO3我知道,很抱歉我回答得太匆忙了。我看到了这个答案,意识到我的答案是错误的,于是把它删除了。我以后会更加小心。@H2CO3这是他的代码,我复制粘贴了他的问题并添加了分配。@aksh1:你的答案在几个地方都错了。这个答案是正确的。“您需要先为指针
*bytesData
分配空间”-不,指针已经分配了。它是指针指向的对象,需要分配和初始化。此外,如果要附加到实例中,则需要一个
NSMutableData
实例。此外,
bytesData=cm.msgBytes
完全是错误的,它会泄漏内存(通过松开指向先前分配对象的指针),这无助于解决问题,
cm.msgBytes
如果没有初始化,仍然是
nil
。@H2CO3我一点也没有错,他必须在使用append之前初始化NSMutableData,他问那里出了什么问题,我告诉他,我以为他知道cm.msgBytes是怎么回事。你不能告诉我我错了,但你可以告诉我我的回答不完整:)。@soryngod没有。你回答中的代码不正确<代码>NSData*字节数据=[[NSData alloc]init];字节数=厘米毫秒字节
只会导致内存泄漏,它不会初始化
cm.msgBytes
。此外,您仍然不需要“为指针分配内存”,因为您已经通过将指针声明为本地变量或实例变量为指针本身分配了内存。您需要内存来存储底层对象。@H2CO3我知道,很抱歉我回答得太匆忙了。我看到了这个答案,意识到我的答案是错误的,于是把它删除了。我以后会更加小心。@H2CO3这是他的代码,我复制粘贴了他的问题并添加了分配。