teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

追記

2021/03/30 11:42

投稿

tetatetu
tetatetu

スコア26

title CHANGED
File without changes
body CHANGED
@@ -66,4 +66,10 @@
66
66
  E0276:名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです
67
67
 
68
68
  ```
69
- というエラーが出ています。マニュアルを確認する限り、タイプミスではないと思うのですが、何がいけないのでしょうか?
69
+ というエラーが出ています。マニュアルを確認する限り、タイプミスではないと思うのですが、何がいけないのでしょうか?
70
+
71
+ ## 追追追記
72
+
73
+ すみません。`#include "nlohmann\json.hpp"`と打っていたのを``#include <nlohmann\json.hpp>`と書き換えたところ、上のエラーが消えました。
74
+
75
+ いくつか疑問点が残りましたが、とりあえずエラー自体は解消したので、1,2日以内に質問を閉じようと思います。ご回答ありがとうございました。

3

追記

2021/03/30 11:42

投稿

tetatetu
tetatetu

スコア26

title CHANGED
File without changes
body CHANGED
@@ -51,4 +51,19 @@
51
51
  「tripletがx64のプログラムを開発していたにもかかわらず、vcpkg側のtripletがx86になっていた」
52
52
 
53
53
  そうです。
54
- 一度そこも確認してみたいのですが、vcpkgをx86でインストールしてしまっているか調べる方法、また、tripletをx64に切り替える方法はどうすればよいでしょうか?
54
+ 一度そこも確認してみたいのですが、vcpkgをx86でインストールしてしまっているか調べる方法、また、tripletをx64に切り替える方法はどうすればよいでしょうか?
55
+
56
+ ## 追追記
57
+ 試しにVisual Studioの「ソリューションエクスプローラー」の「外部依存関係」フォルダに、vcpkgでインストールしてきた`nlohmann`フォルダをコピーしたところ、`#include`には成功しました。(おそらく、なんらかの原因で`integrate install`コマンドが効いていなかったのかもしれません)
58
+
59
+ しかし、名前空間の設定の個所でもう一つのエラーが残っています。サイトの指示に従って、
60
+ ```
61
+ using json = nlohmann::json;
62
+ ```
63
+ と入力したところの`nlohmann`に赤い波線がかかって、
64
+ ```
65
+
66
+ E0276:名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです
67
+
68
+ ```
69
+ というエラーが出ています。マニュアルを確認する限り、タイプミスではないと思うのですが、何がいけないのでしょうか?

2

あああ

2021/03/30 11:35

投稿

tetatetu
tetatetu

スコア26

title CHANGED
File without changes
body CHANGED
@@ -43,4 +43,12 @@
43
43
 
44
44
  ## 解決したいこと
45
45
  `"nlohmann\json.hpp"`をC++プロジェクトで使用できるようにしたいのですが、どうすればよいでしょうか?
46
- ご回答よろしくお願いします。
46
+ ご回答よろしくお願いします。
47
+
48
+ ## 追記
49
+ [こちらのstackoverflowの質問](https://stackoverflow.com/questions/59865669/how-to-use-vcpkg-installed-packages-in-visual-studio-in-reality)でもvcpkgでインストールしたパッケージの`#include`が上手くいかなかったそうですが、原因は
50
+
51
+ 「tripletがx64のプログラムを開発していたにもかかわらず、vcpkg側のtripletがx86になっていた」
52
+
53
+ そうです。
54
+ 一度そこも確認してみたいのですが、vcpkgをx86でインストールしてしまっているか調べる方法、また、tripletをx64に切り替える方法はどうすればよいでしょうか?

1

aaaaaaaaa

2021/03/30 11:03

投稿

tetatetu
tetatetu

スコア26

title CHANGED
File without changes
body CHANGED
@@ -5,7 +5,7 @@
5
5
  E1696: ソースファイルを開けません"nlohmann\json.hpp"
6
6
  ```
7
7
  ## 経緯
8
- [nlohmann-jsonのサイト](https://github.com/nlohmann/json)にて`nlohmann-json`のインストール方法を調べると、今まで使っていた`Scoop`というパッケージ管理ツールをサポートしていないようだったので、急遽代わりに`vcpkg`というパッケージ管理ツールをインストールすることにしました。そこで、[vcpkgのサイト](https://github.com/microsoft/vcpkg)を参考に、以下の手順でvcpkgのインストールしました:
8
+ [nlohmann-jsonのサイト](https://github.com/nlohmann/json)にて`nlohmann-json`のインストール方法を調べると、今まで使っていた`Scoop`というパッケージ管理ツールをサポートしていないようだったので、急遽代わりに`vcpkg`というパッケージ管理ツールをインストールすることにしました。そこで、[vcpkgのサイト](https://github.com/microsoft/vcpkg)を参考に、以下の手順でvcpkgのインストールし、続けて`nlohmann-json`をインストールしました:
9
9
  ```
10
10
  //vcpkgを公開しているgithubのリポジトリをクローン
11
11
  > git clone https://github.com/microsoft/vcpkg