ns3中TypeId的作用
-
通过TypeId和Attribute的结合使用,使得代码的封装性更强,脚本配置更为方便。
-
在进行类的实例化的时候尤为重要,在这里我们讨论两种实例化方法:
(a):CreateObject < Node > ( ) ,这种方法一般是构造所有变量均为默认值的类。
(b):通过ObjectFactory的方法Create来构造,此方法结合工厂机制,直接通过类的TypeId以及用户配置的属性集合AttributeConstructionList,来实例化用户需要的对象。
以上两种方法在构造的过程中,由于每个TypeId只管理当前类的可变成员变量,所以在赋初值(包括默认值,或者通过脚本修改的值,或者环境变量里面获取的值)的时候,从子类一直tree back到ObjectBase为止。最后封装成为智能指针返回。