Xcodeコマンドラインアプリに次のコードがあります:
#import <Foundation/Foundation.h>
#include <string>
#include <vector>
#include <iostream>
using namespace std;
int main(int argc, const char * argv[])
{
vector<string> *pv = new vector<string>;
vector<string> &v = *pv;
v.push_back("juy");
v.push_back("zxc");
cout << v[0] << endl << v[1] << endl;
delete pv;
cout << v[0] << endl << v[1] << endl;
cout << pv->operator[](0) << endl << pv->operator[](1) << endl;
return 0;
}
私がそれを実行すると、これは出力です:
juy zxc juy zxc juy zxc
質問は: 演算子delete
は object-c++ で機能しますか? それはメモリリークを引き起こしますか?
エラーも例外も警告もありません。