首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏码客

    C++开发启程

    开发环境 开发工具 CLion(推荐): http://www.jetbrains.com/clion/ 需要安装下面的编译器 Visual Studio: https://visualstudio.microsoft.com /zh-hans/downloads/ 安装文件太大了 编译器 C++编译器:https://sourceforge.net/projects/mingw-w64/files/ 推荐下载:x86_64- posix-seh GNU 的 C/C++ 编译器 Cygwin 提供了一整套 可移植操作系统接口 (Portable Operating System Interface,缩写:POSIX)层。 开发的程序需要把依赖的 DLL 一起发布。 MinGW 是基于 Cygmin 开发的。重视性能优于兼容性,不需要提供兼容层,因为是直接调用 Windows API。 一般开发用 MinGW (Minimalist GNU for Windows)就够了,但是 MinGW 只能在 windows 上编译32位程序,而且很久不更新,不支持较新的 Windows API。

    1.4K10发布于 2020-05-09
  • 来自专栏ljw

    C++游戏开发

    C++游戏开发概述 C++ 是游戏开发中的主要编程语言之一,因其性能、控制和广泛的生态系统而受到开发者的青睐。随着游戏行业的迅速发展,C++ 被用来构建许多成功的游戏和游戏引擎。 本文将深入探讨 C++ 在游戏开发中的应用,包括基础概念、技术栈、示例代码和实践技巧。 1. C++在游戏开发中的优势 1.1 性能 C++ 是一种高性能语言,允许开发者对系统资源进行精细控制,这在需要高帧率和低延迟的实时游戏中尤为重要。C++ 的编译特性使得代码执行速度快于许多解释型语言。 gdb:GNU 调试器,适合 Linux 开发。 9. 结论 C++ 在游戏开发中提供了强大的性能和灵活性,能够处理从图形渲染到网络通信的各个方面。 掌握 C++ 和相关技术,可以帮助开发者创建丰富的游戏体验。随着技术的不断发展,C++ 将继续在游戏开发领域发挥重要作用。

    93110编辑于 2025-05-31
  • C++】auto关键字 C++入门(5

    1. auto关键字 1.1 auto介绍 早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动储存器的局部变量。 储存类标识符知识补充: auto(C语言中的含义,C++11后废弃):变量进入作用域分配,退出后销毁;储存在stack上 register(C/C++中已弃用):建议编译器将变量储存在寄存器中以提高访问速率

    47110编辑于 2025-12-23
  • 来自专栏包子的书架

    C++ 模板开发

    C++模板开发分为两类: 模板函数开发 模板类开发 模板函数语法: template <class type> ret-type func-name(parameter list) { Exception: " << ex.what() <<endl; return -1; } } 上面的模板函数和模板类的例子,都是定义和声明在同一个文件中,但是如果按照传统的C+ +类开发,类的声明放H头文件,定义方法CPP源文件,这个时候编译会报错,提示成员函数未定义。 当然,这个问题,也是有解决方案的,可以参考C++ 模板类的声明与实现分离问题 参考文献http://blog.csdn.net/u012750314/article/details/52770847 这是模板分离开发的实现可以借鉴: https://www.jianshu.com/p/3a7a41d46645

    1.2K31发布于 2020-06-16
  • 来自专栏Rice嵌入式

    C++ 文件、流《Rice C++ 学习开发

    前面利用了三篇文章讲解了面向过程过程到面向对象语言的转变,以及对C++面向对象的内容进行了讲解,接下来将对C++的高级编程内容进行讲解。 在C++中,文件的读写也是通过类似标准输入、输出流一样。 C++的文件操作: 在标准输入和输出方法中,我们是使用了iostream标准库,而对于文件读取流和文件写入流,我们将使用标准库fstream,C++定义了三个新的数据类型。 关闭文件: C++中,当我们终止程序时,它会自动关闭所有流,释放所有分配的内存,以及关闭所有打开的文件。不过要养成良好的编程习惯,在终止程序时,关闭所有打开的文件。 函数原型: void close(); 文件写入: C++的文件写入使用流插入运算符“<<”向文件写入信息。 文件读取: C++的文件读取使用流提取运算符“>>”向文件读取信息。

    91820编辑于 2022-05-09
  • 来自专栏Rice嵌入式

    C++ 异常处理《Rice C++ 学习开发

    C++异常提供了三个关键字: throw:当程序出现异常时,将异常抛出。 catch:捕获程序的异常。 try:try 块中的代码标识将被激活的特定异常,通常跟着一个或多个catch 块。 保护代码 }catch( ExceptionName e1 ) { // catch 块 }catch( ExceptionName eN ) { // catch 块 } 异常抛出: C+ +提供了一系列标准的异常,需包含头文件#include <exception> 异常描述std::exception该异常是所有标准 C++ 异常的父类。 std::bad_exception这在处理 C++ 程序中无法预期的异常时非常有用。std::bad_typeid该异常可以通过 typeid 抛出。 C++允许通过继承和重载 exception 类来定义自己的异常处理。

    89720编辑于 2022-05-09
  • 来自专栏CSDN搜“看,未来”

    C++】算法集锦(5):BFS算法

    BFS算法和DFS算法属于图论算法的范畴,DFS在前面回溯中,可以去看一下。 BFS算法用于寻找两点之间的最短路径。

    99530发布于 2021-09-18
  • 来自专栏Rice嵌入式

    C++ 动态内存《Rice C++ 学习开发

    C++提供了两个关键字new和delete,进行内存动态申请和释放。 new:在程序运行中奉陪堆内的内存,并返回所分配的空间地址。 << "out of memory" << endl; } cout << rice << endl; return 0; } 注:在C语言中申请内存使用malloc(),在C+ 但是C++中一般不适用malloc,而是使用new。new不只是分配内存,还可以创建对象。 delete:当不在占用动态内存时,通过delete动态释放内存。

    53720编辑于 2022-05-09
  • 来自专栏CSDN搜“看,未来”

    开发成长之路(6)-- C++从入门到开发C++入门不难)

    文章目录 C++背景介绍:C++入门真的不难 C++语言与C语言的异同 类 类方法 C++ 类访问修饰符 类继承 构造/析构函数 拷贝构造函数 this指针 C++ 动态内存 数组的动态内存分配 这已经是进入了第二个阶段了,此前如果C语言基础还没有打好的小伙伴可以再补一下C语言: 开发成长之路(1)-- C语言从入门到开发(入门篇一) 开发成长之路(2)-- C语言从入门到开发(函数与定制输入输出控制函数 ) 开发成长之路(3)-- C语言从入门到开发(讲明白指针和引用,链表很难吗?) 开发成长之路(4)-- C语言从入门到开发(距离开发,还差这一篇) 开发成长之路(5)-- C语言从入门到开发(仿ATM机项目,我写的第一个项目) ---- C++背景介绍:C++入门真的不难 C++ 而后其它的一切,都是由于这些特性而做的二次开发,从而在发展的道路上一骑绝尘。 大家觉得C++难,也就是难在这些后继发展的内容上吧。 这个阶段,让我们忘掉那些,探求最简单的C++基本语法!!!

    1K20发布于 2021-09-18
  • 来自专栏Rice嵌入式

    C++ 类、继承、重载《Rice C++ 学习开发

    作者有个自己的想法,如果C语言编写开发中,能把面向对象的思想添加进去,可以让代码更加美观,更加简洁,特别是代码复用。要让代码实现《高内聚、低耦合》,这样写代码才比较有意义。 C++基础知识说明,如果你学过C语言,那么基础知识是一样的,比循环、运算符、指针等…。可以说C++是在C的基础上增加了面向对象编程。在C语言中,也可以实现类似面向对象的实现,实现代码的重用。 C++ 类定义: 类是面向对象程序设计实现信息封装的基础。类定义以关键字class开头,后跟类名。 C++支持多继承。 + 重载: C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。

    89210编辑于 2022-05-09
  • 来自专栏学习/读书笔记

    HTML5 Canvas开发详解(5) -- 动画

    5.2.1 三角函数 常见的三角函数有三种: 语法: 在Canvas中,凡是涉及角度都是用“弧度”表示,在实际开发中,推荐写法为: 度数 * Math.PI / 180 在三角函数中,我们可以使用反正切函数 ball.draw(cxt, 'fill'); angle += 0.05; })() } } 由于sin函数的值是在[-1, 1]之间,在实际开发中我们需要一个较大值的振幅 在实际开发的过程中,任何复杂的效果,都可以采用类似“分而治之”的方法来思考,再复杂的Canvas物理动画,我们从x轴和y轴两个方向来考虑,实现的思路就非常清晰了。

    2.4K30编辑于 2022-04-07
  • 来自专栏YOLO大作战

    Yolov5 + Opencv DNN + C++部署

    漫谈C++ 摘要:深度学习模型如何在C++下进行调用, 本文详细阐述了YOLOv5C++ & Opencv下进行调用 1.Opencv介绍 OpenCV由各种不同组件组成。 face detector TensorFlow:SSD、Faster-RCNN、Mask-RCNN、EAST Darknet:YOLOv2、Tiny YOLO、YOLOv3、YOLOV4、YOLOV5、 参考:GitHub - doleron/yolov5-opencv-cpp-python: Example of using ultralytics YOLO V5 with OpenCV 4.5.4 , C++ and Python ​源代码如下: #include <fstream> #include <opencv2/opencv.hpp> std::vector<std::string> YOLOv5 in PyTorch > ONNX > CoreML > TFLite进行模型转换 python export.py --weights weights\yolov5s.pt --include

    2.9K11编辑于 2023-11-30
  • 来自专栏自由而无用的灵魂的碎碎念

    配置netbeans开发c++程序

    如果做c++开发的话,你还在使用老旧的visual c++ 6.0吗,如果是,那你快OUT了,试试使用netbeans开发。 针对c++开发人员的netbeans可以从这里下载。 不过,使用netbeans for c++前,你得先把c/c++这些编译器等安装好。我这里使用cygwin。 然后选择安装包,其中,devel节点中c++等这些编译器默认是不安装的,自己选择安装,单击那个skip循环图标,安装最新版本。 ? 下面创建一个简单的c/c++程序试试: #include <stdio.h> int main(void) /* 一个简单的程序 */ {     int num; /* 声明一个名叫 num

    1.6K20发布于 2018-07-24
  • 来自专栏c语言与cpp编程

    《Effective C++》读书笔记(5):实现

    今天继续更新《Effective C++》和《C++并发编程实战》的读书笔记,下面是已经更新过的内容: 《C++并发编程实战》读书笔记(1):并发、线程管控 《C++并发编程实战》读书笔记(2):并发操作的同步 《C++并发编程实战》读书笔记(3):内存模型和原子操作 《C++并发编程实战》读书笔记(4):设计并发数据结构 《Effective C++》读书笔记(1):让自己习惯C++ 《Effective C++》读书笔记(2):构造/析构/赋值运算 《Effective C++》读书笔记(3):资源管理 《Effective C++》读书笔记(4):设计与声明 大多数情况下,适当地提出声明与定义是花费心力最多的事情 ---- 条款27、尽量少做转型动作 C++中兼容C式的转型操作,还有四个新式转型;后者容易被辨识,目标也更狭窄,易于编译器、程序员诊断。 //C (T)expression T(expression) //C++ const_cast<T>(expression) dynamic_cast<T>(expression) reinterpret_cast

    33020编辑于 2023-09-06
  • 来自专栏海天一树

    小朋友学C++5):构造函数

    构造函数,作用是完成对象的初始化工作。 可类比于:int a = 1;这里是给变量a赋初值。 构造函数是一种特殊的函数,首先构造函数名与类名是完全一致的,其次构造函数没有类型。 构造函数可以不带参数,也可以带参数。 #include <iostream> using namespace std; class Dog { public: string name; // 无参构造函数 Dog() { cout << "Dog's constructor!

    56570发布于 2018-04-17
  • 来自专栏数值分析与有限元编程

    我用C++开发

    以前都说Web开发走速成路线,现在C++开发也是走速成路线。C++你可以写得很精细注重效率,也可以用各种库搞得糙快猛,这就很难得了。尤其是还有Qt等第三方工具的助力,开发效率刚刚的。 并且C++嵌入python,就能用python做二次开发,嵌入js ,就能用js做开发。你就是图个方便! 再说说C#,很多软件的二次开发都用它,比如Autodesk全家桶,这些软件的二次开发也很容易。如果只在win下的话,C#确实比较方便。然而,C#非常封闭,不能跨平台。 关键C#又不是生态像py,C++那么庞大,搞得不好就得自己造轮子了。工业软件就没人用C#,写界面不能跨平台,写求解器更是难做(C++的数值计算库很多)。

    1.1K60发布于 2020-06-23
  • 来自专栏C++ 动态新闻推送

    C++ 动态新闻推送 第5

    C++ 动态新闻推送 第5期 从reddit/hackernews/lobsters/meetingcpp摘抄一些c++动态。 还要适配range的需求,要定义一个range(可以是input_range也可以是forward_range总之要定义一个),要有input_iterator output_iterator c+ with Coroutines in C++20 利用co_yield 来做generator,如果你了解python的yield,可以类比一下,概念是一样的 视频 Jason Turner YT - C+ derived, base> get() override{ return d; } covariant_ptr<derived, base> d; }; ACCU YT - Safer C+ - Paul Bendixen - No raw loops with no OS - Meeting Embedded 2020 讲嵌入式场景,作者实现了avr芯片上的libcxx Meeting C+

    1.2K30发布于 2021-08-31
  • 来自专栏学习

    C++】 —— 笔试刷题day_5

    刷题day_5 一、游游的you 题目链接:游游的you 题目解析 题目要求: 输入a,b,c表示y、o、u三个字母的个数; 将这些字母连成字符串,并且这里you三个字母相邻获得2分,两个o字母相邻获得

    15100编辑于 2025-03-16
  • 来自专栏Rice嵌入式

    C++ 数据抽象、封装、接口《Rice C++ 学习开发

    这一篇文章来讲讲C++的数据抽象、封装、接口。 C++数据抽象 只向外界提供关键信息,并隐藏其后台的实现细节,即只表现必要的信息而不呈现细节。是一种依赖于接口和实现分离的编程(设计)技术。 C++封装 把数据和操作数据的函数绑定在一起,这样能避免受到外界的干扰和误用,即数据隐藏。面向对象理念是万物皆对象,都有其特征和行为,我们把“成员变量”理解为特征,把“成员函数”理解为行为。 return length * breadth * height; } private: double length; double breadth; double height; }; C+ 3.可用于实例化对象的类被称为具体类 总结: 通过三篇文章总结C++面向对象的一些概念,以及注意事项。那么C++有什么作用?其实C++可以通过Qt做UI软件,Linux的应用开发,服务器等。 后续继续更新C++的高级功能部分。

    67620编辑于 2022-05-09
  • 来自专栏性能与架构

    Spring 5 响应式开发

    什么是响应式开发? Spring 5 大力支持了 Reactive Programming(响应式开发),server 和 client 都可以使用这种开发模式,Spring 5 是基于 Reactor项目实现的。 Reactor 项目的核心概念 Spring 5 是基于 Reactor 项目实现的响应式开发,Reactor 中有两个核心类型 - Mono 和 Flux。 5. 小结 Reactive Programming 是非常好的开发方法,可维护性和可扩展性都非常好,相对于阻塞式开发,相同资源下性能会得到明显提升。 翻译整理自: https://stackify.com/reactive-spring-5/ 之后会分享 Spring Boot 2.0 响应式开发的内容。

    1.2K40发布于 2018-06-04
领券