ルーターのコードを書いていて、ルーティングテーブルのコードを書くべきところまで来ました。次のようなクラスを作成しました。
//Global variables
unsigned char Dst_IP[4];
unsigned char Nxt_Hop[4];
int Mask;
int OutIF;
RTEntry::RTEntry(unsigned char *dst_IP, int mask, int outIF, unsigned char *nxt_Hop)
{
Dst_IP = dst_IP;
Mask = mask;
OutIF = outIF;
Nxt_Hop = nxt_Hop;
}
bool match(unsigned char *IPaddress)
{
bool isMatch = false;
if(IPaddress == dst_IP)
{
isMatch = true;
}
return isMatch;
}
dst_IP not が match 関数のスコープで宣言されているため、コンパイルしようとするとエラーが発生します。これを修正する方法を知っている人はいますか?おそらくポインタと関係があります。私はおそらく、私がC ++にまったく慣れていないことを言及する必要があります..
前もって感謝します!