看板 Network_Sim 關於我們 聯絡資訊
※ 引述《ssddy (雨劍)》之銘言: : 查了網路上寫 : double x = 0.0, y = 0.0, z = 0.0; //傳入三變數 : Node *thisnode; // 宣告指標 : thisnode = Node::get_node_by_address(index); ←這行make時出現error : ((MobileNode *)thisnode)->getLoc(&x, &y, &z); : 可是我把這幾行加入recv function時,make出現錯誤(如上標示)。 : invalid conversion from 'char*<*>const char*,int>'to 'nsaddr_t>' : initializing argument 1 of 'static Node* Node::get_node_by_address<nsaddr_t>' : 請問要怎麼改才能正確抓到座標呢?@@ 試試看用這招 到 mobile/god.h 把 MobileNode **mb_node; 改成public: 然後到你要使用getLoc的file中加入 #include <mobile/god.h> God::instance()->mb_node[index]->getLoc(&x, &y, &z); 然後build clean,應該就能執行了 - 基本上這招很好用,所有跨node之間的資料存取都能夠過God處理 只要仿照MobileNode **mb_node;建立一個MobileData **mb_data; 就能夠用mb_data[index]的方式存取所有想要跨節點的資料 以這招作弊的方法,很多ns跨節點的問題都能解決, 甚至是跨層的問題也可以用這個偷吃步處理 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.120.108.58