1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

旧OpenSiv3D(0.4.1)をVisualStudio2019(16.6.3以降)で使うときのエラー対策、もっと簡単に!

1
Last updated at Posted at 2020-08-07

前回にちょっと書いたが、理由やその他の説明追加

エラーになる理由

簡単に言うと、昔の命令(STL)の名称が変わり、以前のものが未定義なるといったもの。
それゆえ、ビルドエラーになる
これは OpenSiv3Dライブラリ が新型C++20に対応したため。

ここでいまさら気が付いた!

DXライブラリでもビルド設定で昔のv140設定に変更したりとか前にあったのを思い出した。
ということは、念のため、C++の昔のバージョンに変えればうまくいくかも?
結論から言うと上手くいった。
ただし、エラーは出るので4行だけ手修正も必要になる。コメントアウトするだけ。

直し方

C++ OpenSiv 0.4.1 のプロジェクトを用意。

C++17に変更する

ソリューションエキスプローラーのプロジェクトファイルを右クリック>プロパティ
image.png

C++17に変更 > OK
image.png

ビルドしてとエラーを出す。
image.png

エラーメッセージをダブルクリックで飛ぶ

で、以下の4行をコメントアウト。OpenSiv 0.4.1 を直接書き換えるので慎重に。

image.png

以上、完了

考察

過去にコメントアウトして直すのはやったことがあったが、
C++のバージョンダウンはやっていなかった。
VisualStudioがちょっと前のバージョンの時、C++のバージョンダウン設定が
見当たらなかった(気が付かなかった?しかしコンソールアプリではあった)
が、
ダメもとで調べてみたらあったのでやってみたら難なくうまくいった。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?