散分. 来谈谈Delphi XE4的试用感受RAD Studio XE4 目前最新版 官方 ISO 文件下载(3.76GB):http://altd.embarcadero.com/download/radstudio/xe4/delphicbuilder_xe4_win.iso五一回来结贴 [解决办法] 关注XE4的感受! [解决办法][解决办法][解决办法]这个真心好,值得支持。有空下来试试。[解决办法]给个KEY吧,好下来试用。[解决办法]
[dcc32 Warning]: W1068 Modifying strings in place may not be supported in the future” 3.以后的String,第一个字符将不再是从下标1,而是下标04.类将使用ARC机制。简单来说,class将是类似于Interface的方式,通过引用计数来进行生命周期的 管理。 比如以后的代码可能是:
会发现有{$IFNDEF NEXTGEN} 这样的定义。就名字来 NEXTGEN 来看,即 next generation的意思。…
DCCIOSARM.EXE, the Delphi Cross Compiler for the iOS Device Differences between Delphi Desktop Compilers and Delphi Mobile CompilersThe two Delphi mobile compilers (DCCIOSARM and DCCIOS32) are quite different from the Delphi desktop compilers (DCC32, DCC64, DCCOSX). The mobile compilers can be considered a "Next Generation" of the Delphi language, and the mobile platform is a new step in the continuing evolution of the Delphi language. Keep in mind, however, that the language differences typically are not related to platform differences.To summarize: No inline assembly is supported on iOS, but four atomic intrinsic functions are supported by the Delphi mobile compiilers COM is not supported (7种旧的string 将不支援) Seven of the older string types are not supported: AnsiString WideString AnsiChar and PAnsiChar PWideChar OpenString ShortString Strings are: Immutable (constant), so you cannot index into a string as an array and manipulate the characters in a string If you attempt to modify a string, the Delphi mobile compilers might emit the message W1068 Modifying strings in place may not be supported in the future (Delphi). You can specify whether the message x1068 is emitted as a warning or an error. In the Hints and Warnings page, set the warning "Modifying strings in-place...." to "true" or "error". 0-based instead of 1-based (requiring possible changes to string handling routines) You can use the new Delphi compiler directive {$ZEROBASEDSTRINGS} to change the string indexing scheme locally. However, the RTL for the Delphi mobile compilers uses 0-based strings, so you must use 0-based strings when you are using the RTL in a Delphi mobile app. For example, {$ZEROBASEDSTRINGS} is useful if you have an isolated instance of in-place string editing that you cannot migrate to 0-based indexing at the moment. It is not safe to use {$ZEROBASEDSTRINGS} for code larger than a snippet; do not use {$ZEROBASEDSTRINGS} for an entire module or application.
For all string handling, we recommend using TStringHelper functions. See Migrating Delphi Code to iOS from Desktop for examples. For editing a string in place, we recommend using TStringBuilder. Automatic Reference Counting is on by default for classes as well as interfaces, strings and dynamic arrays. Note: The With statement might not be supported in the future by the mobile compilers or new compilers. We recommend that you refactor or rewrite any With statements in your code base, and eliminate With statements where possible.For more information about writing code for the Delphi mobile compilers, see Migrating Delphi Code to iOS from Desktop. [解决办法]还不会从7升级到更新的, 以后会了再用, 观望[解决办法]移动版的编译器和桌面版的特性有区别很正常,毕竟是简单架构,简化语言特性可以让编译器产生的代码效率高一些。但是win32、win64、osx编译器的特性应该会保持长期稳定的,不可能轻易去掉长期存在的一些东西,象with语句,尽管说了可能不再支持,但是废掉的可能性相当小,毕竟它在那里又有什么危害呢,不过是让编译器在with块中改变一下作用域而已,废掉要修改编译器,不带来效益,还可能带来新的问题,连goto都没废掉呢。[解决办法]还是要转移到XE4上,除非不用Delphi了[解决办法]关注. .[解决办法]delphi要是学学golang那样,任何对象都来自IInterface,实现这个都有生命自管理功能,那也挺不错的[解决办法]很久没来了,关注一下,Delphi 未来到底走向何方,拭目以待。。。[解决办法]佩服大牛!!!![解决办法]
看来 XE4 还是没有脱离 XCODE啊...http://docwiki.embarcadero.com/mobdevsetup/xe4/en/index.html先决条件为了构建和测试iOS应用程序,你需要以下条件:在Mac连接到同一网络的RAD Studio在Mac上安装的Xcode在Mac上安装Xcode的命令行工具在您的Mac上安装和运行平台助理为了测试你的iOS设备上的iOS应用程序的话,还需要以下条件:一个苹果开发者帐号(免费)和iOS开发者的帐户通过苹果($ 99)安装后的开发者证书有准备的iOS设备通过USB电缆连接到您的Mac
在我看来XE4可能开启了死亡之旅。至少对于我可能是这样的。仔细查看XE3中VCL的代码,会发现有{$IFNDEF NEXTGEN} 这样的定义。就名字来 NEXTGEN 来看,即 next generation的意思。也就一下代编译器代表着Delphi的未来。因此我很好奇到底是什么样子的未来。于是我找到了Marco Cantù, Delphi Product Manager写的《The Delphi Language for Mobile Development》其中有一句“here we are referring to code you want to migrate to the mobile platform of course, as the Delphi Windows compilers are not going to change any time soon”证明了我的观点,以后Delphi就是朝这个next generation发展了。于是,我需要具体了解到底是什么内容。 基于我现在的了解有以下内容:1.String将只会有一种UTF16(双字节字符串),不再有AnsiString UnicodeSting 更不会有String[255].2.String以后不能修改 比如 var s: String; s[1] := 'a';这个会报错。[dcc32 Warning]: W1068 Modifying strings in place may not be supported in the future” 3.以后的String,第一个字符将不再是从下标1,而是下标04.类将使用ARC机制。简单来说,class将是类似于Interface的方式,通过引用计数来进行生命周期的 管理。 比如以后的代码可能是:[解决办法]自动释放,可能会导致系统运行速度变慢,参考JAVA就知道。[解决办法]支持 下,顶[解决办法]哥还用着delphi7 。。。原始人吗------解决方案-------------------- 午饭后来直播
基于我现在的了解有以下内容:1.String将只会有一种UTF16(双字节字符串),不再有AnsiString UnicodeSting 更不会有String[255].2.String以后不能修改 比如 var s: String; s[1] := 'a';这个会报错。[dcc32 Warning]: W1068 Modifying strings in place may not be supported in the future” 3.以后的String,第一个字符将不再是从下标1,而是下标04.类将使用ARC机制。简单来说,class将是类似于Interface的方式,通过引用计数来进行生命周期的 管理。 比如以后的代码可能是: