1

FreeBasic を使用すると、関数を使用して新しい画面を作成して開くことができますScreenRes。例えば、

#include "fbgfx.bi"

ScreenRes 640, 480, 32

Sleep()

深度 32 の 640 x 480 画面を作成します。

それで、それと同等のC ++の関数はありますか?

注: Ubuntu 14.04 を使用しています。私は、Windows ベースよりもクロスプラットフォームまたは Linux ベースの機能を好みます。

4

3 に答える 3

2

いいえ、ありません。C++ 自体は非常に純粋な言語であり、基本的な機能 (一般的なリスト、並べ替えアルゴリズム、文字列、メモリ管理ツールなど) しか含まれていません。私は FreeBasic を知りませんが、あなたの質問から判断すると、FreeBasic は特定の高度な機能が既に多く組み込まれている言語の 1 つと思われます。これは、要件に応じて、呪いまたは美徳になる可能性があります。

C++ でグラフィックスが必要な場合は、必要に応じてサードパーティ製のライブラリを使用する必要があります (==> curse) または "can" (==> 美徳)。画面をピクセル単位で完全に制御するには、SDLを検討してください。

于 2014-05-02T17:32:18.860 に答える
1

みんなが言ったように、C/C++ にはそのようなものはありません。Cでグラフィックスを行うには、「Linuxベースの関数」を好むと言っているので、おそらくやりたくない外部ライブラリに依存する必要があります。

残念ながら、OS に付属のライブラリを介してのみ Linux でグラフィックスにアクセスするのは非常に複雑であり、プログラムを他のシステムに移植することはできません。(とにかくこれを行いたい場合は、Linux リニア フレームバッファまたは X について読むことをお勧めします)。

あなたが尋ねることに最も近い解決策は、単純なプリミティブを備えた小さなライブラリを取得することです。SVGALib はそのようなものだと思います: http://www.svgalib.org/

私はそれを使用していませんが、私が読んだ限りでは、Turbo/Borland C++ に付属していた graphics.h に似ています。たとえば、SVGALib でこれを行うことができます。

#include <stdlib.h>
#include <vga.h>

int main(void)
{
   vga_init();
   vga_setmode(G320x200x256);
   vga_setcolor(4);
   vga_drawpixel(10, 10);

   sleep(5);
   vga_setmode(TEXT);

   return EXIT_SUCCESS;
}

そこにモードの設定方法が表示されます。32ビットもサポートすると確信しています:)

于 2016-04-28T07:04:39.813 に答える