いくつかのポインターをループしてニュースにし、それらをベクトルに格納するコードがあります。
std::vector<InputBox*> m_octets;
...
InputBox* octet = new InputBox(rect, title, touch_num);
m_octets.push_back(octet);
クラスデストラクタで、ポインタごとにデストラクタを呼び出しますfor_each
。m_octets
これはすべて良いと思います。すべてコンパイルされ、単体テストに合格します。問題は、GimpelのPC-lintがそれを好まないことです。`オクテット'は解放されていない管理ポインターであることがわかります(警告429)。もちろん、その警告を無効にすることはできますが、マニュアル(11.2.1)には、これに対するセマンティクスがあることが示されています。私はうまくいくと思ったでしょう:
-sem(*push_back, custodial (1))
残念ながら効果はありません。完全に指定するなど、さまざまな組み合わせを試しましm_octets.push_back
たが、何も機能しないようです。与えられた例のこのコマンドの適切な形式を知っている人はいますか?