Hello, Visual C++ 2015. †
PC組み換えやWindows10への更新もあって遅れましたが、 Visual Studio 2015 のCommunity版をインストールしました。
やはり気になるのは Visual C++ のC++規格対応状況です。
ひとまず上記ページを参考にして Visual C++ 2013 では書けなかったコードを書いてみました。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
-
!
-
-
!
|
-
!
|
-
-
!
!
|
-
!
-
-
!
!
!
-
-
!
|
-
|
!
|
-
!
|
-
|
|
!
|
|
|
|
|
!
| #include <utility>
#include <iostream>
inline namespace detail
{
auto& get_cout() { return std::cout; }
template<class T>
constexpr auto plus15(T src)
{
return src + 0b1111;
}
constexpr auto operator "" _x2(unsigned long long src)
{
return src * 2;
}
}
int main(int, char**)
{
decltype(auto) out = get_cout();
auto put = [&o = out](auto&& arg) { o << arg; };
put(u8"Hello, Visual C++ ");
thread_local auto value = 2'000'000 / 500_x2;
put(plus15(value));
put(".\n");
return 0;
}
|
こんな感じのコードが問題なくビルドできます。感動。
当サイトの プログラミング/C++/VC++のC++規格対応状況 のページも近日中に更新しておきます。まぁ前述した cpprefjp のページを見れば済む話なんですが。