首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++等价函数与ScreenRes在FreeBasic中的应用

C++等价函数与ScreenRes在FreeBasic中的应用
EN

Stack Overflow用户
提问于 2014-05-02 17:13:14
回答 3查看 323关注 0票数 1

使用FreeBasic,我可以创建并打开一个带有ScreenRes函数的新屏幕。例如,

代码语言:javascript
复制
#include "fbgfx.bi"

ScreenRes 640, 480, 32

Sleep()

将创建一个深度为32的640×480屏幕。

那么,在C++中是否有与之等价的函数呢?

注意:我使用的是Ubuntu14.04。与基于windows的函数相比,我更喜欢跨平台或基于linux的函数。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-05-02 17:32:18

不,没有。C++本身是一种非常纯的语言,只包含基本功能(例如泛型列表、排序算法、字符串或内存管理工具)。我不知道FreeBasic,但从您的问题来看,它似乎是那些已经包含了许多特定高级功能的语言之一。这可能是诅咒,也可能是美德,取决于你的需求。

如果您需要C++中的图形,那么您必须使用符合您需要的第三方库(==>诅咒)或"can“(==>美德)。对于屏幕上的完全像素级控制,请考虑SDL

票数 2
EN

Stack Overflow用户

发布于 2016-04-28 07:04:39

就像大家说的,在C/C++中没有这样的东西。要在C中进行图形处理,您需要依赖外部库,这可能是您不想做的,因为您说您更喜欢“基于linux的函数”。

不幸的是,仅通过操作系统附带的库访问Linux中的图形非常复杂,而且您的程序无法移植到其他系统。(如果您想这样做,您可能想了解Linux线性框架缓冲区或关于X)。

我认为最接近您所要求的解决方案是,您得到了一个包含简单原语的小型库。我认为SVGALib是这样的:http://www.svgalib.org/

我还没有使用过它,但就我所读到的内容而言,它有点类似于过去随Turbo/Borland C++而来的图形。例如,您可以使用SVGALib来完成这一任务:

代码语言:javascript
复制
#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位:)

票数 1
EN

Stack Overflow用户

发布于 2014-05-02 17:16:57

我对Linux不太熟悉,但是,在C++中,这种性质的东西并不容易,因为C++是一种语言,它不知道什么是“屏幕”。有一些库和框架可以帮助您,比如SDL、SFML和其他更多的库和框架,它们将使您指向正确的方向。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23433536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档