回答編集履歴
2
コードの変更
answer
CHANGED
@@ -13,6 +13,10 @@
|
|
13
13
|
return new MyClass;
|
14
14
|
}
|
15
15
|
|
16
|
+
void hogehoge(void) {
|
17
|
+
std::cout << "hogehoge" << std::endl;
|
18
|
+
}
|
19
|
+
|
16
20
|
private:
|
17
21
|
MyClass(void) {
|
18
22
|
std::cout << "constructor" << std::endl;
|
@@ -21,6 +25,7 @@
|
|
21
25
|
|
22
26
|
int main(void) {
|
23
27
|
std::unique_ptr<MyClass> mc(MyClass::getMyClass(true));
|
28
|
+
mc->hogehoge();
|
24
29
|
return 0;
|
25
30
|
}
|
26
31
|
```
|
@@ -29,6 +34,7 @@
|
|
29
34
|
```
|
30
35
|
getMyClass
|
31
36
|
constructor
|
37
|
+
hogehoge
|
32
38
|
destructor
|
33
39
|
```
|
34
40
|
|
1
追記
answer
CHANGED
@@ -30,4 +30,9 @@
|
|
30
30
|
getMyClass
|
31
31
|
constructor
|
32
32
|
destructor
|
33
|
-
```
|
33
|
+
```
|
34
|
+
|
35
|
+
---
|
36
|
+
ご提示のコードには問題があります。
|
37
|
+
- **getMyClassがstaticでないこと**
|
38
|
+
- **非推奨であるauto_ptrを用いていること(C++11なら別ですが)**
|