- 867 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 06:48:23.20 ID:d4gXl3Bi0.net]
- >>847
ポインタ使え思想はすでにC#とかなクラスが参照型な言語で実現されているが オブジェクトの解放にガベージコレクタが要る言語になった これはガベージコレクタ無し・所有権の無条件移動だけだと、次のようなケースで早速話が破綻するから仕方が無い void bar(int n) { std::unique_ptr<Foo> a(new Foo()); for (int i = 0; i < n; i++) { func1(a, i); // func1(a, 0);で所有権がgone 以降のfunc(a, i)はaの不正アクセス } } 不正アクセスにならないように、実際にはこのようなfunc1()にはa.get()でポインタを渡す書き方をする するとfunc1()以下の呼び出しは全部>>845になる 人類に逃げ場は無い
|

|