2017-01-21 24 views
0

ProgrammingIngorithms.comのこのvb Mersenne Twisterコードは動作しているようですが、VS 2015で "暗黙的な変換"の警告が表示されます。 "BC42016警告:「UInteger」から「Integer」への暗黙の変換です。これは、P2pM、およびIncrementが使用されているReload()関数のみで8回発生します。私が知る限り、これらとstateはすべてUIntegerと明確に定義されており、具体的にキャストするためにCUInt()を追加することは効果がありません。この暗黙的な変換はどこから来ていますか、正しい解決策は何ですか?なぜこのVBコードが暗黙の変換警告を出すのですか?

+0

私はコードを投稿したいと思いますが、著作権では複製と再発行が禁止されています。 – rdtsc

+2

'Increment'と' Decrement'はどちらもparamとしてint32をとりますが、それらはすべてUIntであるため、変換が必要です。あなたはそうしなかったので、あなたは警告を受け取ります – Plutonix

+1

@rdtsc個人的、商業的および非営利目的でコードを配布し、使用することができます。 –

答えて

2

プロジェクトのプロパティに移動します。
新しいタブがサイドメニューとともに開きます。このサイドメニューから[コンパイル]を選択します。
今すぐ右側にテーブルがあります。 「条件」という名前の列と他の列「通知」
暗黙的な変換を選択し、列見出しの下にあるドロップダウンをクリックしてNoneにその通知を設定する「通知」
同様に設定した値が存在します。このテーブルの下
レイトバインディングはありません。実行時にコールが失敗する可能性があり、暗黙的な型、オブジェクトの想定条件がNoneになります。
ソリューションとビオラを再構築してください!
@rdtsc

関連する問題