0
我正在向flatbuffer編譯器提供以下proto文件以生成.fbs文件。flatc(flatbuffer)編譯器不能以正確的方式處理嵌套名稱空間
文件:test.proto
message A {
optional int32 afoo = 1;
message B {
optional int32 bfoo_ = 1;
}
optional B bfoo= 2;
}
message C {
optional int32 abar = 1;
message B {
optional int32 bbar_ = 1;
}
optional B bbar = 2;
}
在此之後,我跑:flatc --proto test.proto,這將產生.fbs文件
文件:test.fbs 從測試//生成.proto
namespace ;
table A {
afoo:int;
bfoo:_A.B;
}
namespace _A;
table B {
bfoo_:int;
}
namespace ;
table C {
abar:int;
bbar:_C.B;
}
namespace _C;
table B {
bbar_:int;
}
這裏要注意的是「B」已經被拉出到全局命名空間 之後我跑平-cpp test.proto,這eventuall y生成不正確的頭文件。含有B
struct B FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table