On Fri, Jan 29, 2010 at 1:33 PM, Mark Brand <[email protected]> wrote:
>
> "aaa->" triggers code completion but should not.
>>
>> "aaa." should trigger code completion but does not.
>>
>>
> Creator seems to have issues with nested classes. It actually used to crash
> in this case but that bug was fixed (once I finally convinced Nokia it was a
> problem...).
>
> My adivce is to not use nested classes.
>
>
> Some people actually like to use trivial nested classes to aid in code
> completion. It can be convenient to type in something like "aaa." and then
> quickly choose what you want. Think of it as a namespace within a class.
>
You should write code based on best coding and design practice, not to
adhere to the whims of a particular IDE's syntax completion. Class nesting
is like function nesting in old C - it get's out of control fast. Pmpl is an
exception (and in that case the class is defined within the cpp file
anyway). For most other cases, class friendships are better.
>
> Two new discoveries:
>
> 1) Code completion is not the only problem. "Find usages" doesn't work
> either.
>
> 2) If you separate the member declaration from the nested class
> declaration, neither problem occurs. This a good workaround. See example
> below:
>
>
> class MainWindow : public QMainWindow {
> Q_OBJECT
> public:
> explicit MainWindow(QWidget *parent = 0);
> ~MainWindow();
>
> private:
> Ui::MainWindow *ui;
>
> class AAA
> {
> public:
> int a;
> int b;
> int c;
> } aaa; //code completion and "find usages" don't work
>
> AAA bbb; //code completion and "find usages" work
> };
>
>
>
> _______________________________________________
> Qt-creator mailing list
> [email protected]
> http://lists.trolltech.com/mailman/listinfo/qt-creator
>
>
_______________________________________________
Qt-creator mailing list
[email protected]
http://lists.trolltech.com/mailman/listinfo/qt-creator