云课五分钟-0Cg++默认版本和升级-std=c++17

前篇:

云课五分钟-0B快速排序C++示例代码-注释和编译指令


视频:

云课五分钟-0Cg++默认版本和升级-std=c++17


文本:

在Linux系统中,可以通过以下步骤升级g++:

  1. 打开终端,使用root权限或者sudo权限登录。
  2. 输入以下命令,更新系统软件源:

sudo apt-get update
3. 输入以下命令,安装g++的最新版本:

sudo apt-get install g++

如果有多个版本的g++,可以通过输入sudo apt-get install g++-x.x(x.x代表版本号)的方式来安装指定版本的g++。
4. 安装完成后,可以通过输入以下命令查看g++的版本:

g++ --version

如果显示的是新安装的版本,则说明g++升级成功。

需要注意的是,升级g++可能会影响到系统中其他软件的编译和运行,因此在升级前最好确认系统中其他软件是否兼容新版本的g++。

这是一个关于Linux软件包依赖问题的描述。从提供的描述中,可以看到您尝试安装g++-11,但遇到了几个依赖问题。让我为您提供一些建议来解决这些问题:

  1. 使用apt-get解决依赖关系: 当您安装或更新软件包时,apt-get会尝试自动解决依赖关系。但在某些情况下,它可能需要一些帮助。您可以尝试以下命令,让apt-get自动安装或更新依赖的软件包:

 

sql复制代码

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install g++-11

其中,dist-upgrade命令会尝试智能地解决系统的依赖关系,并可能涉及删除或替换已安装的软件包。
2. 添加必要的软件源: 有时,默认的软件源中可能没有您需要的软件包版本。您可能需要添加第三方的软件源。但请注意,添加第三方软件源有一定的风险,请确保您信任该软件源。

  1. 手动安装依赖软件包: 您可以尝试手动安装那些缺失的依赖包,如libisl19libmpfr6。使用以下命令:

 

arduino复制代码

sudo apt-get install libisl19 libmpfr6
  1. 使用其他软件管理工具: 除了apt-get,还有一些其他的软件管理工具,如aptitude,它提供了更强大和智能的依赖解决算法。您可以尝试使用它来解决依赖问题。
  2. 检查软件包冲突: 有时,某些已安装的软件包与新的软件包冲突,导致依赖问题。在这种情况下,您可能需要卸载或降级某些软件包。
  3. 查找替代版本: 如果您无法满足某个特定版本的依赖关系,可以考虑安装其他版本的g++或相关的软件包。
  4. 查看详细错误日志: 当您运行安装命令时,通常会有一个详细的错误日志。仔细阅读这些日志可能会提供有关问题的更多线索。

最后,如果上述建议都不能解决问题,您可能需要进一步搜索特定于您的Linux发行版和版本的解决方案。不同的发行版(如Ubuntu、Debian、Fedora等)可能有不同的软件包管理工具和策略。

g++13支持的-std版本包括c++20、c++23。以上信息仅供参考,如需获取更全面的信息,建议您直接访问g++官网进行查询。

要查看g++支持的-std版本,您可以使用以下步骤:

  1. 打开终端或命令提示符窗口。
  2. 输入以下命令来查看g++的版本信息:
 

css复制代码

g++ --version

这将显示您系统上安装的g++版本。
3. 接下来,输入以下命令来查看g++支持的-std版本:

 

复制代码

g++ -std=c++??

将“??”替换为两位数的年份,例如11、14、17、20等。例如,要查看是否支持C++11标准,您可以输入:

 

复制代码

g++ -std=c++11

如果支持该标准,则不会显示任何错误消息;如果不支持,则会显示一个错误消息。您可以尝试不同的年份来查看您的g++版本支持哪些-std版本。

另外,您还可以查阅官方文档或在线资源,以获取有关特定g++版本支持的-std版本的更详细信息。这些资源通常会提供关于编译器特性和标准的详细说明。

g++的官方网站是GNU编译器集合(GNU Compiler Collection,简称GCC)的官网。GCC包含了g++编译器。您可以在浏览器中访问GCC的官方网站,获取关于g++和其他GNU编译器的详细信息、文档、下载链接等。GCC的官网网址是**https://gcc.gnu.org/**。

 

g++ --version
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 

要源码编译并安装gcc-13.2.0.tar.gz,可以按照以下步骤进行操作:

  1. 下载gcc-13.2.0.tar.gz源码包,并解压到指定目录。可以使用以下命令进行解压:

tar -zxvf gcc-13.2.0.tar.gz

  1. 进入解压后的目录:

cd gcc-13.2.0

  1. 创建并进入一个用于编译的目录,例如build:

mkdir build && cd build

  1. 配置编译选项。可以使用默认配置,也可以根据需要自定义配置。以下是一个示例配置命令:

../configure --prefix=/usr/local/gcc-13.2.0

这个命令将把GCC安装到/usr/local/gcc-13.2.0目录下。你可以根据需要修改安装目录。
5. 开始编译。使用以下命令进行编译:

make

编译过程可能需要一段时间,请耐心等待。
6. 安装编译后的GCC。使用以下命令进行安装:

sudo make install

安装过程可能需要输入管理员密码。安装完成后,GCC将被安装到指定的目录中。
7. 更新环境变量。为了使系统能够找到新安装的GCC,需要更新环境变量。可以编辑~/.bashrc文件,并添加以下内容:

export PATH=/usr/local/gcc-13.2.0/bin:$PATH

然后保存文件,并执行以下命令使更改生效:

source ~/.bashrc

至此,GCC 13.2.0 已经成功安装并可以使用了。你可以通过运行 gcc --version 命令来验证安装是否成功。

g++和gcc都是GNU编译器集合(GNU Compiler Collection,简称GCC)的一部分,用于编译程序代码。它们之间有一些关键的区别。总体来说,gcc是一个用于编译C语言的编译器,而g++是一个用于编译C++语言的编译器。以下是更详细的讲解:

  1. 默认编译的语言不同

    • gcc默认当作是C程序。
    • g++则默认当作是C++程序。
  2. 编译阶段

    • 在编译阶段,g++会调用gcc,对于C++代码,两者是等价的,也就是说gcc和g++都可以编译C/C++代码。这是因为g++在编译的过程中,其实是调用gcc按照c++程序来编译的。
  3. 链接阶段

    • 通常会用g++来完成链接,这是因为gcc命令不能自动和c++程序使用的库链接。具体来说,gcc可以用来编译c++但是它不会自动调用链接的c++库,你需要自己手动链接。但是g++会自动调用链接的c++库。

总结来说,gcc和g++的主要区别在于默认处理的语言和链接阶段的处理方式。在编译C++代码时,通常建议使用g++,因为它会自动处理C++库的链接。然而,实际上gcc也可以编译C++代码,只是需要手动链接所需的库。

关于g++和gcc的其他方面的区别

  1. 库的支持

    • 使用g++编译时,它会默认链接标准C++库。这些库是C++程序经常需要的,例如STL(标准模板库)。而使用gcc编译C程序时,默认不会链接这些C++库。
  2. 编译器的特性与警告

    • 随着版本的迭代,g++和gcc在某些特性和警告上可能存在差异。例如,某些在C++编译器中视为过时的特性在g++中可能会发出警告,而在gcc中不会。
  3. 头文件与处理

    • C++引入了很多C语言中没有的头文件,所以在这方面的处理上,g++和gcc也存在差异。g++会处理C++特有的头文件和特性,而gcc主要处理C语言的头文件。
  4. 名称空间的处理

    • 在C++中,名称空间是一个重要的概念,它可以帮助开发者避免命名冲突。而C语言中没有名称空间的概念。因此,g++在名称空间的处理上与gcc有所不同。
  5. 编译速度

    • 在某些情况下,由于C++的复杂性,g++的编译速度可能比gcc稍慢一些,尤其是在大型项目中。但这并不是绝对的,因为编译速度还受到其他因素的影响。

建议:如果你正在编译C++代码,使用g++是更好的选择,因为它针对C++特性进行了优化,并提供了对C++标准库的支持。但是,如果你正在编译纯C代码,并且希望避免链接不必要的C++库,那么gcc是一个更好的选择。

最后,不论你选择哪个编译器,保持编译器的版本更新是一个好的做法,因为新版本的编译器通常会提供更好的优化、更完善的警告系统以及对新语言特性的支持。

除了以上所提到的区别外,还有一些值得注意的点:

  1. 标准支持

    • g++和gcc支持不同的语言标准。C++有很多版本,例如C++98、C++03、C++11、C++14、C++17、C++20等。g++通常对新的C++标准支持较好,而较旧的gcc版本可能只支持较旧的C++标准。
  2. 编译器选项

    • 尽管g++和gcc共享很多编译器选项,但它们也有一些独特的选项。例如,g++有一些针对C++特性的选项,而gcc有针对C语言的选项。因此,在编译时,需要根据编译的语言选择合适的编译器选项。
  3. 调试信息

    • 在编译时,你可能希望添加调试信息,以便于后续的调试工作。g++和gcc在生成调试信息时使用的默认级别可能不同。通常,你需要通过编译器选项来明确指定你需要的调试信息级别。
  4. 兼容性

    • 在某些情况下,尤其是在嵌入式系统或特定的硬件平台上,gcc和g++的兼容性可能有所不同。某些平台可能只支持其中一个编译器,因此在选择编译器时需要考虑到目标平台的兼容性。

总的来说,g++和gcc虽然有很多相似之处,但由于C和C++之间的语言差异,它们在很多方面还是有所区别的。选择使用哪一个编译器通常取决于你要编译的源代码是C还是C++,以及你的目标平台和其他特定需求。无论选择哪一个,都需要对编译器的特性、选项和最佳实践有一定的了解,以确保编译的代码具有最佳的性能和最少的错误。

当然,还有一些关于g++和gcc的重要话题可以继续:

  1. 编译器优化

    • 无论是gcc还是g++,都提供了一系列的优化选项。这些选项可以帮助开发者在编译时对代码进行优化,以提高程序的运行效率。然而,需要注意的是,高级别的优化可能会增加编译时间,并可能使调试变得更加困难。
  2. 跨平台性

    • gcc和g++都是跨平台的编译器,可以在多种操作系统和硬件平台上运行。这使得它们成为了Linux、Windows、MacOS等多种操作系统下的首选编译器。然而,在跨平台编译时,需要注意不同平台之间的兼容性问题。
  3. 与CMake的集成

    • 在现代软件开发中,CMake已经成为了一个流行的构建工具。gcc和g++都可以与CMake很好地集成,使得项目的构建和配置更加简单。
  4. 错误处理和警告

    • gcc和g++在编译过程中都会提供错误和警告信息。这些信息对于开发者来说非常重要,因为它们可以帮助定位代码中的问题。g++在处理C++代码时,尤其是模板和STL相关代码,可能会产生更多的警告信息,但这些警告通常是有助于提高代码质量的。
  5. 开源社区支持

    • 由于gcc和g++是开源的,它们得到了广大开源社区的支持。这意味着有任何问题或疑虑,你都可以从社区中获得帮助。此外,由于开源的特性,这两个编译器也在不断地得到改进和增强。

总结:gcc和g++是功能强大的编译器,它们在处理C和C++代码时有很多不同的特性和策略。选择哪一个取决于你的具体需求,但无论如何,了解它们之间的区别和特性都是非常有价值的,这可以帮助你更好地编译和优化你的代码。

除了上述内容,还有一些与g++和gcc相关的注意事项和高级话题值得探讨:

静态与动态链接

  • 当使用gcc或g++进行编译时,你可以选择进行静态链接或动态链接。静态链接将所有库和代码嵌入到最终的可执行文件中,而动态链接则是在运行时加载所需的库。

插件与扩展

  • gcc和g++支持插件和扩展,这可以增强编译器的功能。例如,你可以使用特定插件进行额外的代码优化、静态分析或特定领域的代码生成。

内联汇编

  • gcc和g++都支持内联汇编,这允许开发者直接在C/C++代码中嵌入汇编代码。这在某些性能敏感的场合或对特定硬件进行操作的场合非常有用。

并行编译

  • 对于大型项目,编译时间可能是一个问题。gcc和g++都支持并行编译,这意味着它们可以同时编译多个文件,从而加速整体编译过程。

集成开发环境(IDE)的支持

  • 很多IDE,如Eclipse、Code::Blocks、Visual Studio等,都支持gcc和g++。这意味着你可以在这些IDE中直接编写代码,并使用gcc或g++作为后端编译器。

编译器特性探测

  • 在编写跨平台的代码时,可能需要确定编译器是否支持特定的特性或标准。很多项目使用预处理器指令和条件编译来实现这种特性探测,从而编写出更具可移植性的代码。

无论是gcc还是g++,它们都是编程工具链中的重要组成部分,理解它们的特性和能力可以帮助开发者更加高效地使用它们,并编写出性能更好、更稳定的代码。

除了之前提到的各个方面,还有一些补充的内容,包括:

安全性和漏洞防护

  • 编译器在代码生成和优化过程中也扮演着安全防线的角色。新版本的gcc和g++通常会修复先前版本中的安全漏洞,并提供更强大的代码优化以防止潜在的漏洞。因此,保持编译器的更新也是提高生成代码安全性的一个重要方面。

与其他工具的集成

  • gcc和g++不仅可以作为独立的编译器使用,还可以与其他工具集成,形成完整的开发环境。例如,它们可以与调试器(如GDB)、性能分析工具(如gprof)、内存检查工具(如Valgrind)等集成,提供一站式的开发体验。

编译器的可移植性

  • gcc和g++作为跨平台编译器,其自身的可移植性也是值得关注的一个方面。它们可以在各种操作系统上运行,并为目标平台生成代码。这使得开发者可以在一个平台上开发代码,并编译为另一个平台上的可执行文件。

资源消耗

  • 在使用gcc和g++进行编译时,也需要注意它们对系统资源(如CPU、内存)的消耗。对于大型项目,资源消耗可能会成为一个瓶颈。因此,有效地管理资源、优化编译参数也是重要的一环。

综上所述,gcc和g++作为广泛使用的编译器,在各个方面都提供了丰富的功能和选项。了解并掌握这些特性,将有助于开发者更加高效、安全地进行代码编译和开发工作。

当然!以下是一个简单的C语言代码示例,你可以使用gcc进行编译:

 

c复制代码

#include <stdio.h>
int main() {
printf("Hello, world!\n");
return 0;
}

将上述代码保存为一个名为hello.c的文件。然后,在命令行中使用gcc进行编译:

 

bash复制代码

gcc hello.c -o hello

这将生成一个可执行文件名为hello的可执行文件。最后,在命令行中运行生成的可执行文件:

 

bash复制代码

./hello

你将在终端上看到输出:"Hello, world!"。这是一个简单的示例,帮助你开始使用gcc编译C语言代码。你可以根据自己的需求编写更复杂的代码,并使用gcc进行编译。

当然!以下是一个简单的C++代码示例,你可以使用g++进行编译:

 

cpp复制代码

#include <iostream>
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}

将上述代码保存为一个名为hello.cpp的文件。然后,在命令行中使用g++进行编译:

 

bash复制代码

g++ hello.cpp -o hello

这将生成一个名为hello的可执行文件。最后,在命令行中运行生成的可执行文件:

 

bash复制代码

./hello

你将在终端上看到输出:"Hello, world!"。这是一个简单的C++程序示例,帮助你开始使用g++编译C++代码。和C语言示例类似,你可以根据需要编写更复杂的C++代码,并使用g++进行编译和执行。

通过代码来说明gcc和g++的区别并不直接明显,因为gcc和g++的主要区别不在于代码本身,而在于它们处理代码的方式和默认行为。两者都可以编译C和C++代码,但在编译C++代码时,g++会链接C++标准库,而gcc则不会。下面是一个简单的例子来说明这一点:

  1. 创建一个简单的C++程序,命名为test.cpp

 

cpp复制代码

#include <iostream>
int main() {
std::cout << "Hello from C++!" << std::endl;
return 0;
}
  1. 使用gcc编译此代码:

 

css复制代码

gcc test.cpp -o test

你可能会遇到错误,提示缺少某些C++标准库的引用。这是因为gcc在编译时默认不会链接C++标准库。

  1. 使用g++编译此代码:

 

css复制代码

g++ test.cpp -o test

这次编译应该成功,并且不会产生任何错误或警告。g++会自动链接C++标准库。

通过这个例子,你可以看到gcc和g++在处理C++代码时的区别。虽然它们都可以编译C++代码,但g++在编译时会链接C++标准库,这使得编译C++代码时更为方便。因此,在编译C++代码时,一般推荐使用g++而不是gcc。而对于C代码,使用gcc是更常见的选择。

#include <stdio.h>  
  
int main() {  
    printf("Hello, world!\n");  
    return 0;  
}

 

#include <iostream>  
  
int main() {  
    std::cout << "Hello, world!" << std::endl;  
    return 0;  
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/165839.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

cad提示由于找不到mfc140u.dll,无法继续执行代码怎么修复

在Windows操作系统中&#xff0c;mfc140u.dll是一个重要的文件&#xff0c;很多软件运行都需要它&#xff0c;它属于Microsoft Visual C库的一部分。许多基于C的开发项目都依赖于这个文件&#xff0c;如果在使用过程中出现丢失现象&#xff0c;可能导致相关软件或游戏无法正常运…

Linux管道的工作过程

常用的匿名管道&#xff08;Anonymous Pipes&#xff09;&#xff0c;也即将多个命令串起来的竖线。管道的创建&#xff0c;需要通过下面这个系统调用。 int pipe(int fd[2]) 我们创建了一个管道 pipe&#xff0c;返回了两个文件描述符&#xff0c;这表示管道的两端&#xff…

丢掉破解版,官方免费了!!!

哈喽&#xff01;大家好。 几天不见&#xff0c;今天给大家带来一款海外的神器&#xff0c;官方宣布完全免费&#xff0c;但仅限于个人与教育用途&#xff0c;切勿商用噢&#xff01; 不要看这个软件名字普普通通&#xff0c;实际上内蕴乾坤&#xff01; 接下来看我给大家炫一…

【【VDMA彩条显示实验之三 之 RGB LCD 彩条显示实验 】】

VDMA彩条显示实验之三 之 RGB LCD 彩条显示实验 VDMA彩条显示实验之三 之 RGB LCD 彩条显示实验 LCD 的构造是在两片平行的玻璃基板当中放置液晶盒&#xff0c;下基板玻璃上设置 TFT&#xff08;薄膜晶体管&#xff09;&#xff0c;上基板玻璃上设置彩色滤光片&#xff0c;通…

Android修行手册-POI操作中文API文档

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

【Linux系统化学习】进程的状态 | 僵尸进程 | 孤儿进程

个人主页点击直达&#xff1a;小白不是程序媛 Linux专栏&#xff1a;Linux系统化学习 目录 操作系统进程的状态 运行状态 阻塞状态 进程阻塞的现象 挂起阻塞状态 Linux进程状态 Linux内核源代码怎么说 R&#xff08;running状态&#xff09;运行状态 S&#xff08;sl…

改进YOLOv8:结合ODConv构成C2f_ODConv:即插即用的动态卷积/可轻量化

🗝️YOLOv8实战宝典--星级指南:从入门到精通,您不可错过的技巧   -- 聚焦于YOLO的 最新版本, 对颈部网络改进、添加局部注意力、增加检测头部,实测涨点 💡 深入浅出YOLOv8:我的专业笔记与技术总结   -- YOLOv8轻松上手, 适用技术小白,文章代码齐全,仅需 …

穿越风波,“长红”的直播电商依然扎根产业和消费者

当消费者将最后一个快递拿进家门&#xff0c;2023年的双11也就落下了帷幕。相较于往年组队、拼单的玩法&#xff0c;如今最受欢迎的双11 流程&#xff0c;或许已经变成点进自己心仪主播、店铺的直播间&#xff0c;翻阅最新的产品清单&#xff0c;从中选择购物目标&#xff0c;在…

【wp】2023第七届HECTF信息安全挑战赛 Web

伪装者 考点&#xff1a;http协议flask的session伪造ssrf读取文件 首先根据题目要求就行伪造HTTP 这里不多说&#xff0c;比较基础 然后下面得到是个登入 页面&#xff0c;我们输入zxk1ing 得到 说什么要白马王子 &#xff0c;一眼session伪造 看到ey开头感觉是jwt 输入看看 得…

vscode快捷键使用总结

&#xff09; 1、格式化选中的代码 1、格式化选中的代码 vscode中选中所要格式化的代码&#xff1a; ctrl k,ctrlf 其实可以查到该命令 ctrlshiftp打开命令窗口输入format

手写消息队列(基于RabbitMQ)

一、什么是消息队列&#xff1f; 提到消息队列是否唤醒了你脑海深处的记忆&#xff1f;回看前面的这篇文章&#xff1a;《Java 多线程系列Ⅳ&#xff08;单例模式阻塞式队列定时器线程池&#xff09;》&#xff0c;其中我们在介绍阻塞队列时说过&#xff0c;阻塞队列最大的用途…

入股合作协议要不要写章程

公司章程&#xff0c;是注册公司的基本文件&#xff0c;也公司必备的规定公司组织及活动基本规则的书面文件&#xff0c;是公司成立的必不可少的基础&#xff0c;也是公司赖以生存的灵魂。那么&#xff0c;这次要和大家讨论的是有关于入股合作协议要不要写章程的问题了。 入股合…

windows上安装MySQL Server.

进入官网 MySQL 找到 下载&#xff0c;并点进入。 往下翻&#xff0c;找到社区下载&#xff0c;进入页面 选择 Mysql community Server 选择系统&#xff0c;下载 之后解压。 将解压文件夹下的bin路径添加到变量值中 配置初始化的my.ini文件 [mysqld] # 设置3306端口 port330…

蓝桥杯每日一题2023.11.19

题目描述 “蓝桥杯”练习系统 (lanqiao.cn) 题目分析 首先想到的方法为dfs去寻找每一个数&#xff0c;但发现会有超时 #include<bits/stdc.h> using namespace std; const int N 2e5 10; int n, cnt, a[N]; void dfs(int dep, int sum, int start) {if(dep 4){if(s…

Python 自动化(十七)ORM操作

ORM-查询操作 查询简介 数据库的查询需要使用管理器对象 objects 进行 通过 自定义模型类.objects 管理器调用查询方法 查询方法 all()方法 概念与理解 用法&#xff1a;自定义模型类.objects.all()作用&#xff1a;查询自定义模型实体中所有的数据等同于 select * fr…

【好用的个人工具】搭建一款实用的个人IT工具箱——it-tools

【好用的个人工具】搭建一款实用的个人IT工具箱——it-tools 一、it-tools介绍二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载it-tools镜像五、部署it-tools工具箱5.1 创建…

【机器学习】划分训练集和测试集的方法

在机器学习中&#xff0c;我们的模型建立完成后&#xff0c;通常要根据评估指标来对模型进行评估&#xff0c;以此来判断模型的可用性。而评估指标主要的目的是让模型在未知数据上的预测能力最好。因此&#xff0c;我们在模型训练之前&#xff0c;要对训练集和测试集进行划分。…

vue3项目安装eslint和prettier

【几乎最全/全网最长的 2 万 字】前端工程化完整流程&#xff1a;从头搭到尾&#xff08;vue3 vite qiankun docker tailwindcss iview......&#xff09;_前端工程化流程-CSDN博客 vue3tsvite项目中使用eslintprettierstylelinthusky指南 - 掘金 上面两篇文章相互结合操…

mybatis使用xml形式配置

以这个注解形式的查询代码为例 Select("select * from emp where name like concat(%,#{name},%) and gender #{gender} and entrydate between #{begin} and #{end} order by update_time desc ")public List<Emp> list(String name, Short gender, LocalDat…

【libGDX】使用ShapeRenderer绘制几何图形

1 ShapeRenderer 简介 ShapeRenderer 是 libGDX 中用于绘制基本形状的工具之一。它可以绘制点、线、矩形、多边形、圆形、椭圆形、扇形、立方体、圆锥体等几何图形。这对于在游戏或图形应用程序中绘制简单的形状是很有用的。 ShapeRenderer 的主要方法如下&#xff1a; 1&…