delphi
var Engines,Nodes,Node,Field: Variant; //定義節點和域變數。
i:integer; //控制回圈的變數,給裝配體賦值。
begin
Nodes:= Engine.RootNodes; //當點擊一個零件時上一個零件的顏色消失,獲取節點集。
BCB
Variant Engine, Nodes,Node,Field; //定義節點和域變數。
int i; //控制回圈的變數,給裝配體賦值。
int j;
Nodes=Engine->RootNodes;
請教下 delphi運行正常 ,而在BCB里卻報錯,這是什么原因?是不是Variant的問題呢?
uj5u.com熱心網友回復:
Delphi中的 "." 并不完全與 BCB中的 "->" 相等。前者的編譯器更強大一些,所以可以作為變體內部成員的訪問寫法。
但BCB因為要兼容C++語法, "->" 運算子的左邊必須是一個指標。右邊是指標物件的成員。
(也就是說,左邊那個變數名,宣告時都是 Form* 這樣的,具體看C++語法)
很明顯,Variant 變數不是指標,所以“->”運算子肯定不符合語法。
你需要查看BCB中關于Variant型別的操作語法指南 。。。 我就N年沒寫BCB了~
uj5u.com熱心網友回復:
嗯嗯 ,你說的很對,但我改一下,卻提示 RootNodes is not a member of variant.是不是Delphi中的Variant 在BCB中會被一種新的資料型別取代呢?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/61621.html
標籤:VCL組件開發及應用
