本日、Surface Go 2 を購入し、Visual Studio 2019 をインストールしました。以前の PC で正常にコンパイルされたプロジェクトを VS19 でも読み込みました。
最初に気付いた問題は、VS エディターが.cpp
ファイル内の Unicode 文字 (キリル文字) を象形文字として表示することです。
card->NewTextW(L"Çàãðóçêà", ...
それ以外の:
card->NewTextW(L"Загрузка",
次に、プロジェクトをコンパイルしようとしましたが、100 を超えるエラーが発生しました。それらはすべて、コンパイラが からconst wchar/char *
に変換できないことに関するものでしたがwchar/char *
、繰り返しますが、以前、別の PC で、すべてが正常にコンパイルされました。このエラーは、ほぼすべてのタイプの文字列で表示され、上記のようにエンコーディングが間違っている文字列とそうでない文字列で表示されます。
エラーの具体例
card->NewTextW(L"Çàãðóçêà", 3, r.right/2-50, r.bottom / 2 - 350 / 2 - 80 + 350 + 60, 10, 20, RGB(0, 0, 0));
card->NewText("eng-string", 4, r.right/2-50, r.bottom / 2 - 350 / 2 - 80 + 350 + 60, 10, 20, RGB(0, 0, 0));
card
インターフェイス仮想クラスのオブジェクトへのポインターはどこにありますかICard
:
class ICard
{
public:
...
virtual void NewTextW(wchar_t *text, int id, int x, int y, int divid, int j, COLORREF col) = 0;
virtual void NewText(char *text, int id, int x, int y, int divid, int j, COLORREF col) = 0;
...
}card*;
エラーが出ない具体例
MessageBoxA(NULL, "aga", "uogou", MB_OK);