質問編集履歴

1

追記

2020/02/26 04:16

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -57,3 +57,45 @@
57
57
  set(CMAKE_CXX_STANDARD 20)
58
58
 
59
59
  ```
60
+
61
+
62
+
63
+ ---
64
+
65
+ 追記:
66
+
67
+ `set(CMAKE_CXX_STANDARD 20)`としているのでC++20のはずなのですが、`std::popcount`は使えませんでした。
68
+
69
+ IDEが`Change 'popcount' to '__popcount'?`と提案してきたのでそれに合わせたところ、上記のように`ambiguous`となりました。
70
+
71
+
72
+
73
+ ```C++
74
+
75
+ #include <iostream>
76
+
77
+
78
+
79
+ int main() {
80
+
81
+ int a = 0b111000;
82
+
83
+ std::cout << std::popcount(a) << "\n";
84
+
85
+ }
86
+
87
+ ```
88
+
89
+
90
+
91
+ ```error
92
+
93
+ main.cpp:5:21: error: no member named 'popcount' in namespace 'std'; did you mean '__popcount'?
94
+
95
+ std::cout << std::popcount(a) << "\n";
96
+
97
+ ~~~~~^~~~~~~~
98
+
99
+ __popcount
100
+
101
+ ```