Apple Mach-O Linker(ld)使用Switch语句时出错?

exc*_*ate 1 macos cocoa mach-o objective-c

我正在创建一个Objective-C程序,在调用C函数时,它会尝试转换一个数字并返回一个字符串.但是,当我尝试编译时,这会导致Apple Mach-O链接器(ld)错误.

这是代码片段:

NSString * convertNum (int theNum) {
  NSString *numString;

  switch (theNum) {
    case 102:
       numString = @"Oh yea, string 102";
       break;
    case 104:
       numString = @"Oh great, string 104";
       break;
    /* ... */
    default:
       numString = @"Don't feed me with something I don't know!";
       break;
  }

  return numString;
}
Run Code Online (Sandbox Code Playgroud)

我做错了什么吗?我正在使用Xcode 4.非常感谢.

小智 5

链接错误通常意味着像方法,函数或类似的东西具有原型声明,但它没有在任何地方实现.它也可能意味着您没有在应用程序中包含库或框架,但您正在使用该库或框架中的头文件.

你也可以使用numString,你可以返回指向静态字符串的指针,它们是在编译时生成的.