Qt中UI命名空间的基本原理是什么?

时间:2009-12-01 16:33:18

标签: qt user-interface namespaces

在从UI文件创建用户界面代码的过程中,Qt创建了两个具有相同定义的类。

class UI_CustomeUIClassFromUIFile
{
//code generated from UI file thru UIC
}
namespace ui
{
class CustomeUIClassFromUIFile public : UI_CustomeUIClassFromUIFile{};
}using namespace ui;

有两个类只有一个内部UI命名空间而另一个没有namspace的原因是什么?是否支持不支持命名空间的编译器,还有一些像QTNAMESPACE这样的宏。

2 个答案:

答案 0 :(得分:1)

qt / trolltech(& now nokia)发布了一篇关于API设计的优秀文档,其中讨论了API的最佳实践。可能有there的解释。

答案 1 :(得分:1)

宏是QT_BEGIN_NAMESPACE,如果您将Qt编译为custom namespace内部,则使用该值。

对于2个班级,我认为你自己回答了这个问题。您可以使用Ui_XXXUi::XXX。我总是更喜欢Ui::方法,但更喜欢自己的方法。

所以我想除了让程序员选择之外,我没有真正的答案。