回答編集履歴

3

文言修正

2020/11/24 17:25

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -34,6 +34,6 @@
34
34
 
35
35
 
36
36
 
37
- yumetodoさんもコメントされていますが、生のポインタは放漏れや2重解放の原因となりますので
37
+ yumetodoさんもコメントされていますが、生のポインタは放漏れや2重解放の原因となりますので
38
38
 
39
39
  C++のコードではスマートポインタ([unique_ptr](https://ja.cppreference.com/w/cpp/memory/unique_ptr)/[shared_ptr](https://ja.cppreference.com/w/cpp/memory/shared_ptr)/[weak_ptr](https://ja.cppreference.com/w/cpp/memory/weak_ptr))の使用を検討してください。

2

リンク追加

2020/11/24 17:25

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -27,3 +27,13 @@
27
27
  `straightine`と`straightine2`の値を変更しているためです。
28
28
 
29
29
  別の変数に退避しておくなどして、`delete`には`new`が返したアドレスを渡してください。
30
+
31
+
32
+
33
+ ---
34
+
35
+
36
+
37
+ yumetodoさんもコメントされていますが、生のポインタは開放漏れや2重解放の原因となりますので
38
+
39
+ C++のコードではスマートポインタ([unique_ptr](https://ja.cppreference.com/w/cpp/memory/unique_ptr)/[shared_ptr](https://ja.cppreference.com/w/cpp/memory/shared_ptr)/[weak_ptr](https://ja.cppreference.com/w/cpp/memory/weak_ptr))の使用を検討してください。

1

文言修正

2020/11/24 10:47

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -8,11 +8,11 @@
8
8
 
9
9
  (略)
10
10
 
11
- *straightine++; // ポインタを変更している
11
+ *straightine++; // を変更している
12
12
 
13
13
  (略)
14
14
 
15
- straightine2 = dynamic_cast<StraightLine*>(*it); // ポインタを変更している
15
+ straightine2 = dynamic_cast<StraightLine*>(*it); // を変更している
16
16
 
17
17
  (略)
18
18