我正在使用Netbeans IDE 8.0,並且遇到了一些麻煩。Netbeans在C++中遇到了一些麻煩std :: map :: operator []
這裏是代碼說明問題的程序塊
typedef struct Context {
bool finished;
bool reliable;
bool running;
bool firstAckReceived;
map<uint32_t, uint32_t>* missingChunks;
} Context;
map<uint32_t, Context*>* contexts;
...
this->contexts->operator[]((uint32_t) ctrl.getSource())->running = true;
當使用建議(Ctrl +空格鍵),操作員[]返回一個上下文&符合市場預期,但畢竟不能給我任何建議那。 Netbeans並不認爲它是一個可以取消引用來獲取Context字段的Context。
編譯正常 此外,「-running」突出顯示爲一個令我困擾的錯誤。 這是否發生了很多?
另外,我想我應該可以如下,但G ++抱怨訪問使用語法元素...
this->contexts[(uint32_t) ctrl.getSource()]->running = true;
任何想法?
在附註中,爲什麼所有的星星?你打算如何刪除所有這些原始指針? – doctorlove 2014-10-22 11:43:34
我犯了一個錯誤,並在發佈之前發佈了評論......剛編輯 – SOKS 2014-10-22 11:45:57