我有一些关于Objective C的一般性问题,我已经在线阅读了Objective C的基础知识,在一些书中,我怀疑我遇到过函数调用.在Objective C中将方法传递给像这样的对象......
eg: [object method]; // here object is objective C class.
Run Code Online (Sandbox Code Playgroud)
它将被视为消息传递.如果是这样的话,如果我像这样进行正常的C++调用呢...
eg: object->method(); // here object is C++ class.
Run Code Online (Sandbox Code Playgroud)
这也是在目标C中传递的消息,或者它将被视为正常的C++方式.
谢谢你的澄清......
在我看来,我使用了UITableView,我在nib中设置了文件所有者的委托和数据源.在我的班级.h文件中,我已经符合下面的协议......
例如:
@interface test : UIViewController<UITableViewDelegate, UITableViewDataSource>
{
...
...
}
Run Code Online (Sandbox Code Playgroud)
一切正常......委托方法都被正确调用......现在我的问题是为什么我们在.h中添加"UITableViewDelegate,UITableViewDataSource".没有那个我也接到那些电话.有什么用?
感谢名单
我对以Objective C方式编写for循环有疑问.我可以在传统的C for循环中执行相同的循环,但是我正在尝试学习Objective C.这是我的问题.
listdata是一个包含ofi_vc_modal_ab_user_info对象对象的可变数组,我想将列表数据的每个电子邮件与电子邮件进行比较,直到列表数据计数并查找其位置,如果找到,我想从列表数据中删除该对象.
for (ofi_vc_modal_ab_user_info *loc_obj in listData)
{
if (strcasecmp(loc_obj->email, email) == 0) {
// What need to do here.
}
}
Run Code Online (Sandbox Code Playgroud)
如何在这里继续...感谢您的帮助:)

我在旧版本中使用了这个背景,在更新到iOS 6.0后我无法在IB中找到任何地方.我堆栈溢出并使用它
self.view.backgroundColor = [UIColor groupTableViewBackgroundColor];
Run Code Online (Sandbox Code Playgroud)
它仍然是白色,我现在该怎么办?我需要为此设置图像吗?
我编写了一个测试代码来理解Objective C vs C指针.这是代码..
例如:
NSMutableArray *array = [[NSMutableArray alloc] init];
NSMutableArray *sec_mut;
if (array) {
[array addObject:@"My"];
[array addObject:@"name"];
[array addObject:@"is"];
[array addObject:@"BoB"];
sec_mut = [[NSMutableArray alloc] init];
if (sec_mut) {
for (id obj in array) { // Is it allocating new object and adding or only points to already existing memory (just adding address)?
[sec_mut addObject:obj];
}
}
}
[array removeObjectAtIndex:0];
for (id obj in sec_mut) {
NSLog(@"str is %@\n",obj);
}
Run Code Online (Sandbox Code Playgroud)
输出:str是我的str是名称str是str是BoB
即使我在索引零处删除了对象,所有4个对象都在新数组中正确显示,因此它不仅指向并且具有自己的对象,我是对的吗?还是悬挂指针?
感谢名单
这个问题看起来非常直接,但我有一个情况,我只需要一些帮助,如何以有效的方式做到这一点.比如说:我有三个视图视图1,视图2,视图3.
首先,我从基本视图推送View 1,然后从View 1推出View 2,然后从View 2推送View 3.现在View 3需要一个保存用户信息的对象.所以我在这里做的是将用户对象从基础1传递到视图1,并在加载所有视图时查看2和视图3,这里每个视图都将该对象存储为Ivar,即使视图1和2不使用.
我不认为从基地直接访问View 3来设置对象是好的,或者从View 3访问基础来获取值,任何想法的人如何处理这种情况.
作为初学者,我想澄清一下这个疑问.谢谢.
ios ×6
iphone ×5
cocoa-touch ×4
objective-c ×4
uiview ×2
xcode ×2
function ×1
methods ×1
protocols ×1
uiimage ×1
uitableview ×1