在Java中,我們有類似VarName.toString
的東西來確定var的名稱。如何獲取由delphi函數中的參數傳遞的變量或對象節點的名稱?
我在Delphi中的代碼,我需要做到同樣的事情,因爲我有很多的子串,我需要確定一個record
類型:
type
THierarchyAccess = String; // receive the user permissions from the MySQL DB
THierarchy = record
MOD_HIERARQUIA : THierarchyAccess; // 'BROWSE_ONLY', 'MANAGE', 'NONE'...
MOD_OPERADORES : THierarchyAccess;
MOD_ESTATISTICAS : THierarchyAccess;
MOD_AUDITORIA : THierarchyAccess;
MOD_HOMEPAGE : THierarchyAccess;
MOD_HOTSITES : THierarchyAccess;
MOD_MATRIZ : THierarchyAccess;
MOD_NOTICIAS : THierarchyAccess;
MOD_VISITANTES : THierarchyAccess;
...
end;
...
function TAccess.IsAccessPermited(apNeed, apHave: String): Boolean;
begin
// HERE I need to know not only the content of "apHave",
// but if it came from THierarchy.MOD_HOTSITES or THierarchy.MOD_MATRIZ etc.
end;
...
if IsAccessPermited('BROWSE_ONLY', MyHierarchy.MOD_HOTSITES) then Form2.Open;
有一種優雅的方式來確定傳遞給函數的變量名稱是什麼?
都能跟得上。 '如果MyHierarchy.MOD_HOTSITES ='BROWSE_ONLY'然後'有什麼問題? –
如果我沒有獲得許可信息,我會發郵件給我自己(支持),告訴MyHierarchy。來自用戶XXXX是不完整的。 – PSyLoCKe
您可以在從數據庫加載權限數據時發送電子郵件,而不是在檢查所擁有的內容時。然後你有數據庫字段名稱,並可以使用它而不是試圖獲取記錄字段名稱。 –