問題タブ [function-definition]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - VS2017 が、入力 typedef で宣言されたがオリジナルで定義された関数に対して「関数定義が見つかりません」と警告するのはなぜですか?
API ユーザーが構造体名 CURL を使用し、API が内部的に CURL を Curl_easy として参照するように、CURL が CURL_easy として内部的に CURL 構造体を実装しているように見える方法を模倣しようとしています。
これは、
curl/curl.h で
と
それぞれcurl/easy.hとeasy.cにあります。
だから私はそのアイデアをコピーして、同じことをする小さな例を作りました:
これらの関数 initializeIS() および countUpIS() のユーザーは構造体名「IS」を使用しますが、これらの関数の開発者はそれを「IntStruct」と呼んでいます。
このコードは正常にコンパイルおよび実行されますが、VS2017 では「'countUpIs' の関数定義が見つかりません」として countUpIS に緑の下線が引かれているようです。
なぜそうなのかについての洞察はありますか?完全に合法ですが、VS2017 内でうまく解析されないものはありますか?