我如何在Qt Creator中爲std::vector
工作自動完成?它不正常工作?Qt Creator的自動完成(智能感知)不適用於std ::向量元素
例如,在一個新的新項目上,我創建了一個struct foo { int bar; };
。如果我創建FOO的QVector,智能感知/自動完成正常工作:
但是對於std::vector<foo> v2
什麼也沒有發生後,我按Qt Creator的3.3 v2[0].
我點。 0,使用Visual Studio編譯器工具鏈(所以STL來自VS,而不是gcc,如果這有什麼區別的話)。
編輯:我發現了一個相關的bug報告(關於迭代器雖然) - https://bugreports.qt.io/browse/QTCREATORBUG-1892。我也重現了這個問題。
編輯2:我有一個自定義的模板類測試:
struct bar {
int b;
};
template<class T> struct foo {
T operator [](int a) { return T(); }
};
而且它的正常工作:
不可能。不幸的是,Qt Creator的代碼模型存在模板問題。有一些工作正在使用clang的,但我不知道結果如何。 – 2015-02-09 10:54:52
@cassiorenan Btw,這是否也爲你重現? – sashoalm 2015-02-09 11:05:06
是的,它的確如此。我使用Qt Creator 3.3.2 順便說一句,你的測試是有缺陷的。嘗試實現一個簡單地返回a的運算符[]。 – 2015-02-09 11:22:26