【enterprise architect 13】源码工程导入类图,报错"解析xxx.h的yy行出错.遇到未知符号:{"

正常情况下,只有自定义的宏无法识别,添加宏即可。

我碰到的是不识别冒号(:)、括号( { ) 、保留字(class)这样最基本的符号,这都不能识别感觉不可思议。

首先怀疑是文件编码有问题,试图设置导入文件的文件编码,修改方法:

【配置】->【选项】->【源代码工程】,设置【源代码工程使用字符集】为源码文件对应的编码。我因为使用visual studio,默认编码是gb2312, 设置为【20936 (简体中文 GB2312)】, 但是问题没有解决。

几番折腾,终于发现问题:

//A::B这种命名空间的写法会导致EA无法识别它包含的类
namespace A::B { 
class balabala{
};
}

// 换成下面这种写法就没问题了-_-||,坑爹
namespace A {
namespace B { 
class balabala{
};
}
}
原文地址:https://www.cnblogs.com/mooooonlight/p/14818943.html