みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

コンパイラエラー C2872 あいまいなシンボル

コンパイラエラー C2872 あいまいなシンボルです。

コンパイルエラーが解消出来ません。
ご教授下さい。

■コンパイルエラー内容
error C2872: 'MarketplaceWebServiceProducts' : あいまいなシンボルです

■やりたいこと
AmazonのAPI「Marketplace Web Service API (MWS)」のHello world

以下ページの右上 オレンジ色の「Download」ボタンから入手できる
「MWSProducts_2011-10-01_v2017-03-22.dll」の使用
https://developer.amazonservices.jp/doc/products/products/v20111001/cSharp.html

■DLLの使用
Visual Studioの対象プロジェクトのプロパティから、
上記DLLの参照を追加しました

■コーディング
using namespace MarketplaceWebServiceProducts;//←ここはコンパイルOK
using namespace MarketplaceWebServiceProducts::Mock;//←★ここで上記コンパイルエラー

■ご質問
上位の「MarketplaceWebServiceProducts」が正常なのに、
下位の「Mock」を付けるとあいまいなシンボルになるのはなぜでしょうか。
解決策をご教授ください。(可能であれば実装をご提供ください)

■環境
Visual Studio
.Net 4.0
C++/Cli

投稿日時 - 2019-01-19 17:07:04

QNo.9579293

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

> C++における宣言の定義には該当するnamespace/classの構造を
> 定義したヘッダの読み込みが必要です。

ですがコレ C++/CLI なのでアセンブリの参照してれば using だけでOK。
include云々が問題じゃない。

投稿日時 - 2019-01-20 08:13:46

ANo.1

C++における宣言の定義には該当するnamespace/classの構造を定義したヘッダの読み込みが必要です。
最初の宣言が通るのは、最外殻部の名前は何かの構造に依存しない情報だからです。

投稿日時 - 2019-01-19 23:44:14

あなたにオススメの質問