弱引用功能目前只在最新版的解释器中支持,用户可以通过条件编译的方式判断当前版本的解释器中是否支持弱引用及自动弱引用功能。
1、条件编译判定是否支持弱引用
{$IFDEF weakptr}
{$ENDIF}
2、条件编译支持判定是否支持自动弱引用
{$IFDEF AutoWeak}
{$ENDIF}
范例:
//判断当前解释器是否支持弱引用
{$IFDEF weakptr}
echo "Support weakptr";
{$ELSE}
echo "Unsupport weakptr";
{$ENDIF}
//判断当前解释器是否支持自动弱引用
{$IFDEF AutoWeak}
echo 'Support AutoWeak';
{$ELSE}
echo "Unsupport AutoWeak";
{$ENDIF}
return 1;
当前版本支持弱引用时打印:
Support weakptr
Support AutoWeak
当前版本不支持弱引用时打印:
Unsupport weakptr
Unsupport AutoWeak