使用執行是型別標識來確定物件的型別

2021-04-27 01:30:29 字數 396 閱讀 9587

使用執行是型別標識(rtti)來確定物件的型別。typeid通過查詢乙個物件的位址以得到這個位址指向的物件的型別。下面給出簡單的例子:

#include

#include

using namespace std;

class base{};

class drived:public base {};

int main()

{base b,bb;

drived d;

if(typeid(b)==typeid(bb))

{cout<<"b and bb are the same type"rtti是會增加系統開銷的。預設情況編譯器沒有開啟。其實這種方式也不是唯一獲得型別資訊的方法,後面的文章我們將討論另外一種可以得到型別資訊的方法。

使用物件模型來建立內容型別

一 首先定義乙個函式來建立內容型別,如下 private spcontenttype createcontenttype spweb web,string typename,string basetypename,string description else contenttype new spc...

如何在執行時確定物件型別(RTTI)

如何在執行時確定物件型別 rtti rtti 是 runtime type information 的縮寫,意思是 執行時型別資訊。它提供了執行時確定物件型別的方法。本文將簡略介紹 rtti 的一些背景知識 描述 rtti 的概念,並通過具體例子和 介紹什麼時候使用以及如何使用 rtti 本文還將詳...

如何在執行時確定物件型別(RTTI)

rtti 是 runtime type information 的縮寫,意思是 執行時型別資訊。它提供了執行時確定物件型別的方法。本文將簡略介紹 rtti 的一些背景知識 描述 rtti 的概念,並通過具體例子和 介紹什麼時候使用以及如何使用 rtti 本文還將詳細描述兩個重要的 rtti 運算子的...