[v17R5]オブジェクト型の数値について

もしかして数値は64bitに対応している?

DOM関連のコマンドのリファレンスの文字列の桁が倍に増えてる。 :mrgreen:
これも変更箇所?

64ビット版のDOM参照は,v12の頃から倍(32文字)です。

https://doc.4d.com/4Dv17/4D/17.1/Overview-of-XML-DOM-Commands.300-4178519.ja.html

返される参照は連続したの"0"の文字列となります(32-bitでは16文字、64-bitでは32文字)。

XMLの64bitの件、全然きがついていませんでした。
勘違いです。:oops:

64bit化も勘違いみたいですね。ちょっと期待したのですが…
原因はオブジェクトの数値が実数というところです。
処理のさせ方で結果が違ってきます。途中で実数の計算になっていることに気がついていませんでした。
[]29478634;“Your comment here…”[/]

※添付画像を差し替えました。

今のバージョンですが実数と整数の暗黙的キャストの禁止ってできないですよね。 :frowning:

4Dの64bit化についていけてないことに気がついたのですが…:oops:

ORDAを使うなら倍長整数は64bit整数に切り替えて、扱える数値の範囲は実数の範囲(13桁だから約9兆?)
として割り切って使ったほうがミスがなくてよい様に思う。 :mrgreen:

「暗黙的」キャストは,フォームオブジェクトと変数(式)のバインドを支えている仕組みでもあるので,
これをコンパイラー/シンタックスチェックでエラーまたは警告扱いするような設定はないと理解しています。

(これがないと,Form.valueのような式で整数が扱えなくなってしまう)

オブジェクト型の数値プロパティについては,下記のページで仕様(?)が説明されています。

「数値型のオブジェクトプロパティは常に実数値」

https://doc.4d.com/4Dv17/4D/17.1/Value-type.301-4178634.ja.html