> @interface
> @implementation
> @end
> @protocol
> @property
> @synthesize
我认为这些东西就像复杂的marco或代码生成器.是否可以为代码生成目的创建自定义指令?一种可能的用途是为CoreData生成方法.
我没有想到,因为我从来没有见过任何关于它的东西,但我的世界不是世界.
后续问题:
Jonathan在下面提到可以编写自己的预处理器,这就引出了问题.目前,#define SYMBOliC_CONSTANT 102将在文件移动到编译器之前用文件中的字符102替换字符SYMBOliC_CONSTANT的所有实例.
我知道XCode你可以在Targets构建过程中添加“Run Script Phase”.因此,我可以编写一个脚本来查找我的自定义预处理指令,如’$coredata’,然后让脚本生成一个新文件,其中字符$coredata替换为某些代码字符.但根据我对XCode构建过程的理解,您无法将更改的文件提供给编译器源代码阶段.这些文件由IDE指定并锁定.
有没有人做过类似的事情?我知道外部构建系统是可能的,但说实话,我不是那种理解水平.我不知道Build and Run按钮的技术细节.
与此同时,我将开始阅读Apple的XCode文档……
谢谢你的回复!
解决方法 你的想法是正确的:你的代码中不可能这样做.添加更多@ -directives的唯一方法是通过编译器本身.即使你遇到了所有麻烦,我几乎可以保证语法突出显示对它们的支持被硬编码到某个地方的 Xcode配置文件中.哦,如果你考虑使用预处理器宏,我的理解是@字符在预处理器宏中是非法的.
编辑:我跑了一个测试,我是对的.在C预处理器宏中使用@字符是非法的.它们遵循与变量名称相同的规则.
总结以上是内存溢出为你收集整理的是否可以在Objective-C中创建自定义指令?全部内容,希望文章能够帮你解决是否可以在Objective-C中创建自定义指令?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)