我對C++中的RTTI機制有一些疑惑。 假設中有A類和從A繼承現在考慮下面的代碼B類: B* b = new B();
A* a = dynamic_cast<A*>(b);
我知道,多態類的虛擬方法有虛表和vptr的的,但我認爲指針只提供有關虛擬功能的信息。程序如何在運行時知道b的類型,使用vptr和vtables?
我在我的類UserController中有一個過程,根據它的ID刪除類TUser的對象。我想要使GenericController類能夠與任何其他類做到這一點。這是我的程序: procedure TUserController.DeleteUser(User: TUser);
begin
if not FManager.IsAttached(User) then
User