質問編集履歴
2
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -54,7 +54,7 @@
|
|
54
54
|
|
55
55
|
|
56
56
|
|
57
|
-
奇妙なことに、intからCard型への型変換
|
57
|
+
奇妙なことに、intからCard型への型変換を定義していないにも関わらず、intからCard型へのキャストができてしまっています。デバッグしてみると、(Card)i は Card(i) と同じように扱われています。さらには、暗黙的な型変換さえ行えてしまいます。
|
58
58
|
|
59
59
|
なぜこのような挙動が起きるのでしょうか。そう定義されているのですか?
|
60
60
|
|
1
includeが無かった
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
トランプに関連するクラスを自作している時、奇妙に思える挙動に巡り合いました。
|
2
2
|
|
3
3
|
```c++
|
4
|
+
|
5
|
+
#include <iostream>
|
6
|
+
|
7
|
+
#include <string>
|
8
|
+
|
9
|
+
|
4
10
|
|
5
11
|
class Card {
|
6
12
|
|
@@ -26,7 +32,7 @@
|
|
26
32
|
|
27
33
|
|
28
34
|
|
29
|
-
func(Card card){};
|
35
|
+
void func(Card card){};
|
30
36
|
|
31
37
|
|
32
38
|
|