回答編集履歴
1
m
answer
CHANGED
@@ -1,3 +1,27 @@
|
|
1
1
|
operatorとはいえど所詮ちょっと変わった呼び出し方もできる関数に過ぎないのです。ってことを伝えたいのではないかとエスパーします。全体を見ないとなんともですが。
|
2
2
|
|
3
|
-
`::`はグローバル名前空間にある、という意味合いですね。
|
3
|
+
`::`はグローバル名前空間にある、という意味合いですね。
|
4
|
+
|
5
|
+
```
|
6
|
+
#include <new>
|
7
|
+
|
8
|
+
int main()
|
9
|
+
{
|
10
|
+
::operator new(sizeof(int));
|
11
|
+
}
|
12
|
+
```
|
13
|
+
|
14
|
+
```
|
15
|
+
prog.cc: In function 'int main()':
|
16
|
+
prog.cc:5:17: warning: ignoring return value of 'void* operator new(std::size_t)', declared with attribute 'nodiscard' [-Wunused-result]
|
17
|
+
5 | ::operator new(sizeof(int));
|
18
|
+
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~
|
19
|
+
In file included from prog.cc:1:
|
20
|
+
/opt/wandbox/gcc-10.1.0/include/c++/10.1.0/new:126:26: note: declared here
|
21
|
+
126 | _GLIBCXX_NODISCARD void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
|
22
|
+
| ^~~~~~~~
|
23
|
+
```
|
24
|
+
|
25
|
+
[https://wandbox.org/permlink/AMdyESvpojzWE8iu](https://wandbox.org/permlink/AMdyESvpojzWE8iu)
|
26
|
+
|
27
|
+
この警告文見たほうがわかりやすいかな?
|