4
我有這種情況:操作並不適用於這一運算對象類型
type
TWheel = record
private type
TWheelEnum = (whBA, whCA, whFI, whGE, whMI, whNA, whPA, whRM, whRN,
whTO, whVE);
var
FWheelEnum: TWheelEnum;
public
class operator Implicit(const Value: string): TWheel;
class operator Implicit(const Value: TWheel): string;
end;
有:
var
awheel, bwheel: twheel;
begin
try
awheel := 'PA';
bwheel := 'PA';
if awheel = bwheel then writeln ('pippo');
end.
當我運行它把我這個錯誤:
E2015 Operator not applicable to this operand type
我已經解決寫作:
if awheel = string(bwheel) then writeln ('pippo');
但可以解決它沒有添加字符串(...)?在我第一時間想到的東西如下:
class operator Implicit(const Value: TWheel): Twheel;
但編譯器轉我的錯誤,告訴只有一個TWheel類型被接受。所以我想知道是否有解決方案,或者如果我需要使用字符串(...)的轉換類型? 非常感謝。
也可以,我也需要它。但對於它,我認爲要解決的問題是:「如果不是(awheel = bwheel),那麼」是一樣的?或者有其他解決方案嗎?謝謝。 –
請參閱我的最新更新 –
再次感謝。我發現有關完整列表。 –