小编Qui*_*lor的帖子

我什么时候定义objective-c方法?

我正在学习Objective-C,并且拥有C/C++背景.

  • 在面向对象的C++中,总是需要在定义(实现)它之前声明方法,即使它是在父类中声明的.

  • 在过程式C,IIRC中,只要定义一个函数,只要从同一个编译单元中的其他东西(即同一个文件)调用它就可以远离文件中的某个函数(嗯,提供)你没有在其他地方用"extern"声明它.

  • 现在,在Objective-C中,您似乎只需要在头文件中声明选择器,如果它们将被外部使用,并且您可以在.m文件中组合选择器就好了,并在其中调用它们.m文件.此外,似乎永远不会(重新)定义委托方法或继承的方法.

我是在正确的轨道上吗?什么时候需要在Objective-C中定义一个选择器?

api-design declaration definition objective-c

34
推荐指数
2
解决办法
1万
查看次数

"ID"的.NET命名约定(任何标识:大写)

我正在统一这些不一致的命名约定,这个问题最近让我发疯了.

在我正在使用的代码库中没有关于"ID"的约定; "ID","Id"甚至"iD"使用不一致.

****问题**:在.NET中,你们如何将"ID"大写?例如,nodeID,nodeId?FolderID或FolderId?

****编辑**:复数案件怎么样?那么我应该做"NodeIDs"还是"NodeIds"?

谢谢

.net naming-conventions

31
推荐指数
5
解决办法
8320
查看次数

在Ruby中设置?

我需要一个像集合一样的集合.基本上我正在扫描一个长字符串并在集合中添加单词,但我希望能够检测到何时出现重复.

如果集合不可用,那么在Ruby中最有效的方法是什么?布朗尼指的是例如代码.

ruby set data-structures

31
推荐指数
3
解决办法
2万
查看次数

如何将可变数量的参数"传递"给NSString的+ stringWithFormat:

我想在Objective-C中编写一个函数,例如下面的函数,它接受可变数量的参数,并将这些参数传递给+stringWithFormat:.我知道vsnprintf,但这意味着将NSString'格式'转换为C并返回(并且还意味着转换其中的格式化占位符......).

下面的代码编译,但当然不按我想要的行为:)

NSString *estr(NSString *format, ...) {
    va_list args;
    va_start(args, format);
    NSString *s = [NSString stringWithFormat:format, args];
    va_end(args);
    return s;
}
Run Code Online (Sandbox Code Playgroud)

基本上:是否有方法的va_list友好版本+stringWithFormat:,还是可以写一个?

iphone cocoa objective-c variadic-functions nsstring

31
推荐指数
1
解决办法
8055
查看次数

如何在Objective-C中将unichar值转换为NSString?

我有一个存储在unichar变量中的国际字符.此字符不是来自文件或网址.变量本身只存储一个无符号短(0xce91),它是UTF-8格式并转换为希腊大写字母'A'.我试图将该字符放入NSString变量但我失败了.

我尝试了两种不同的方法,其中两种都不成功:

unichar greekAlpha = 0xce91; //could have written greekAlpha = '?' instead.

NSString *theString = [NSString stringWithFormat:@"Greek Alpha: %C", greekAlpha];
Run Code Online (Sandbox Code Playgroud)

不好.我得到一些奇怪的汉字.作为旁注,这与英文字符完美配合.

然后我也尝试了这个:

NSString *byteString = [[NSString alloc] initWithBytes:&greekAlpha
                                                length:sizeof(unichar)
                                              encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

但这也不起作用.我显然做了一件非常糟糕的事,但我不知道是什么.有谁可以帮助我吗 ?谢谢!

unicode objective-c nsstring

31
推荐指数
2
解决办法
4万
查看次数

如何从像@"xxx =%@,yyy =%@"和NSArray对象这样的格式字符串创建NSString?

有没有办法从像@"xxx =%@,yyy =%@"和NSArray对象这样的格式字符串创建一个新的NSString?

在NSSTring类中有许多方法,如:

- (id)initWithFormat:(NSString *)format arguments:(va_list)argList
- (id)initWithFormat:(NSString *)format locale:(id)locale arguments:(va_list)argList
+ (id)stringWithFormat:(NSString *)format, ...
Run Code Online (Sandbox Code Playgroud)

但是没有它们将NSArray作为参数,我找不到从NSArray创建va_list的方法......

cocoa objective-c string-formatting nsstring nsarray

30
推荐指数
3
解决办法
5万
查看次数

在Visual Studio 2008中进行调试时,仅执行一个单元测试

有没有办法在调试时选择要在Visual Studio 2008单元测试项目中执行哪些TestMethod?我想调试一个特定的测试而不需要在每个调试会话期间执行其他TestMethods.

unit-testing visual-studio-2008 visual-studio

29
推荐指数
2
解决办法
1万
查看次数

在popover segues中使用的Anchor和Passthrough是什么?

在Xcode中,Popover segue有两个名为Anchor和Passthrough的连接字段.它们用于什么? 图片

xcode storyboard ios segue

28
推荐指数
1
解决办法
2万
查看次数

如何找到符合KVC标准的Objective-C对象的所有属性键?

是否有一个方法返回符合NSKeyValueCoding协议的对象的所有键?

沿着这条线的东西[object getPropertyKeys]将返回NSString对象的NSArray.它适用于任何符合KVC标准的对象.这种方法存在吗?到目前为止,我还没有找到任何搜索Apple文档的内容.

谢谢,G.

cocoa properties introspection objective-c key-value-observing

25
推荐指数
1
解决办法
1万
查看次数

在Objective-C中对协议/回调/委托进行OCUnit测试

使用OCUnit,有没有办法测试委托协议?

我正在尝试这个,这不起作用.

-(void) testSomeObjDelegate {
  SomeObj obj = [[SomeObj alloc] initWithDelegate:self];
  [obj executeMethod];
}
-(void) someObjDelegateMethod {
  //test something here
}
Run Code Online (Sandbox Code Playgroud)

我将尝试obj在不同的线程上调用该方法,并让测试进入睡眠状态,直到调用该委托.似乎应该有一种更简单的方法来测试它.

delegates unit-testing objective-c ocunit

24
推荐指数
2
解决办法
1万
查看次数