質問編集履歴

3

2019/06/26 11:19

投稿

s8079
s8079

スコア36

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- 私は場合分けを減らすためにしばしば引数にコンストラクタを渡します.
5
+ 私は場合分けを減らすためにしばしば引数にコンストラクタのインスタンスを渡します.
6
6
 
7
7
  引数にコンストラクタのインスタンスを渡している例や説明をあまりにも見かけないので心配になり質問しました.
8
8
 

2

2019/06/26 11:19

投稿

s8079
s8079

スコア36

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,9 @@
46
46
 
47
47
  std::vector<int> vec1;
48
48
 
49
+ // std::vector<int> vec2();
50
+
49
- std::vector<int> vec2();
51
+ std::vector<int> vec2{};
50
52
 
51
53
  std::vector<int> vec3 = std::vector<int>();
52
54
 

1

質問の追記

2019/06/26 04:09

投稿

s8079
s8079

スコア36

test CHANGED
@@ -1 +1 @@
1
- 引数にコンストラクタを渡すことの賛否
1
+ 引数にコンストラクタのインスタンスを渡すことの賛否
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  私は場合分けを減らすためにしばしば引数にコンストラクタを渡します.
6
6
 
7
- 引数にコンストラクタを渡している例や説明をあまりにも見かけないので心配になり質問しました.
7
+ 引数にコンストラクタのインスタンスを渡している例や説明をあまりにも見かけないので心配になり質問しました.
8
8
 
9
9
  エラーが出るわけではないですが,このような書き方はやめた方が良いのでしょうか.
10
10
 
@@ -33,3 +33,25 @@
33
33
  }
34
34
 
35
35
  ```
36
+
37
+
38
+
39
+ ### 追記
40
+
41
+
42
+
43
+ 以下の書き方はいずれも正しいのでしょうか.
44
+
45
+ ```c++
46
+
47
+ std::vector<int> vec1;
48
+
49
+ std::vector<int> vec2();
50
+
51
+ std::vector<int> vec3 = std::vector<int>();
52
+
53
+ std::vector<int> *pvec = new std::vector<int>();
54
+
55
+ delete pvec;
56
+
57
+ ```