作者:Chad Austin, 2002.02.15翻译自:https:chadaustin.mecppinterface.html概述本文阐述如何创建可跨多编译器和不同编译配置(Release,Debug... etc.)的C++ DLL APIs.背景许多平台对于平台上偏好的编程语言存在ABI(Application-Binary-Interface,应 …
编程文章
大家好,我是杂烩君。在我们嵌入式开发中,打印日志是最常用的一种调试手段。合理地打印日志,可以帮助我们快速地分析问题。本篇文章我们来汇总一些嵌入式打log的一些规则。1、什么操作下加日志?(1)错误处理对于不能恢复的严重错误,日志内容应详细到足以帮助定位问题,但同时不应该包含敏感信息。比如申请内存失败时使用错误(Error)级别加上日志信息。(2)一些关键性的 …
IT之家讯 近日,微软在其Windows博客中通过一篇博文详细解释了.Net Native,这是用于开发Win10应用商店应用的全新框架,微软向开发者展示了为何.Net Native更优秀。从事开发的朋友对托管代码与本地代码之间的争论应该都有见闻。微软从上个世纪90年代后期开始着手构建.Net开发框架,并于2000年发布了.Net 1.0。该框架的理念是,开 …
摘要:这一次,Zig 要彻底告别 C++ 了。链接:https:ziglang.orgnewsgoodbye-cpp声明:本文为 CSDN 翻译,未经允许禁止转载。作者 | Andrew Kelley 译者 | 弯月 责编 | 郑丽媛出品 | CSDN(ID:CSDNnews)在此次变更之前,Zig 代码库由两个编译器组成:旧编译器:总共包含 8 万行 C+ …
一、编译前的准备工作项目创建与配置确认已创建正确的项目类型(Win32 Application、Win32 Console Application、MFC Application等)检查项目目录结构是否合理(建议将源文件、头文件、资源文件分开存放)源代码准备确保所有必要的源文件(.cpp)和头文件(.h)已添加到项目中检查文件编码(VC++6.0默认使用本地 …
前言启动是 App 给用户的第一印象,启动越慢,用户流失的概率就越高,良好的启动速度是用户体验不可缺少的一环。启动优化涉及到的知识点非常多,面也很广,一篇文章难以包含全部,所以拆分成两部分:原理和实战,本文是实战篇。原理篇:抖音品质建设-iOS 启动优化《原理篇》如何做启动优化?文章的正式内容开始之前,大家可以思考下,如果自己去做启动优化的,会如何去开展?这 …
下面介绍 vim 的一些使用技巧:删除包含特定字符的行删除重复行,并对所有内容重新排序删除包含特定字符的行在 vim 中,可以使用 :gpatternd 命令删除所有包含 pattern 模式的行。例如,删除所有以大写字母 D 开头的行,可以执行 :g^Dd 命令。这里的 ^ 表示匹配行首。这里的 :g 是 :global 命令的缩写,用 :help :g …
本文介绍在Visual Studio软件中配置、编译C++ 环境下GDAL库、SQLite环境与PROJ库的详细方法。GDAL库是一个非常方便的地理数据处理库,但其在C++ 环境下的配置与编译流程较为复杂;尤其是最新的GDAL 3及以上版本,其在C++ 环境中的配置更是首先需要满足许多其他的环境配置条件(包括SQLite环境、CMake软件与PROJ库),使 …
本文主要研究由msvc编译的opencv在QT中的配置,opencv可以是官网直接下载的版本,也可以是msvc(例如vs2019)通过cmake编译 contrib功能的opencv版本,这2种版本对qt版本没有严格要求,但是若在cmake中选择了with_qt功能,那么配置时的qt版本就要和编译时选择的qt版本一样或相近了。 下载官方opencv4.9并解 …
1. Qt框架概述Qt的历史和版本Qt是一个跨平台的C++应用程序开发框架,由挪威公司Trolltech(现为Qt Company)于1991年创建。Qt的发展历程:1991年:Qt项目启动1995年:Qt 1.0发布,首个商业版本1999年:Qt 2.0发布,引入Qt Designer2005年:Nokia收购Trolltech2008年:Qt 4.4首次 …