CodeSynthesis C++/Tree を使用して xsd を C++ クラスに変換しようとしています。xsd には、次のような time という名前の要素があります。
<xs:element name="time">
<xs:complexType>
<xs:attribute name="seconds" use="required" type="xs:double"/>
... other attributes
</xs:complexType>
変換された C++ ヘッダーでは、次のように定義されています。
typedef ::time time_type;
コンパイルすると、エラーメッセージが表示されます
'time' in namespace '::' does not name a type
ただし、要素の名前を「times」などに変更すると、正常にコンパイルされます。この動作の背後にある理由は何でしょうか? どうもありがとう!