簡體   English   中英

標准NS3協議標頭示例是否完整?

[英]Is the standard NS3 protocol header example complete?

我正在嘗試實施在NS3中創建新協議標頭的標准建議。 我一直在關注http://www.nsnam.org/wiki/HOWTO_create_a_new_type_of_protocol_header_or_trailer上的簡短教程。

即使只是將代碼復制到相關文件中,我也會收到錯誤消息,說未定義SetData和GetData。

./libns3.21-applications-debug.so: undefined reference to ns3 :: LocHeader :: GetData()const的./libns3.21-applications-debug.so: undefined reference to ./libns3.21-applications-debug.so: vtable for ns3::LocHeader' ./libns3.21-applications-debug.so: undefined reference to ns3 :: LocHeader :: SetData(unsigned int)的./libns3.21-applications-debug.so: undefined reference to clang:錯誤:鏈接器命令失敗,退出代碼為1(使用-v查看調用)

我沒有在任何示例代碼中看到SetData()或GetData()的函數定義。 我應該自己編寫代碼嗎? 似乎示例代碼中已包含該代碼。

答案是肯定的,如果用戶實現了GetData和SetData,它確實可以工作。

但是,示例代碼缺少兩個步驟。

  1. 新的.h和.cc文件必須添加到./wscript中,這並不是立即顯而易見的。

  2. GetInstanceTypeId的類型定義包含錯誤。 缺少一個“常量”:

    TypeId YHeader :: GetInstanceTypeId(void){return GetTypeId(); }

應該閱讀:

TypeId
YHeader::GetInstanceTypeId (void) const
{
return GetTypeId ();
}

我建議對頁面維護者進行更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM