当前位置: 首页 > wzjs >正文

珠海市网络营销协会的官方网站软文推广系统

珠海市网络营销协会的官方网站,软文推广系统,网上做设计兼职哪个网站好点,iis wordpress 500错误接上一讲三、2、2>4》,创建logger.h和helper_t.h里的gettime函数 即解决下图的报红 同时,接上一讲二、3、点击“确认”按钮后,进入MainFrame.h对应的下述界面,此讲下图进行实现 一、创建Logger.h:日志记录文件&…

接上一讲三、2、2>4》,创建logger.h和helper_t.h里的gettime函数

  • 即解决下图的报红

同时,接上一讲二、3、点击“确认”按钮后,进入MainFrame.h对应的下述界面,此讲下图进行实现

一、创建Logger.h:日志记录文件,用于在指定路径下创建日志文件,提供方法写入日志信息

1、在helper_t.h中创建gettime函数

注意,师傅的helper_t.h是SDK库里的,不是自己写的 

2、创建Logger.h

1>创建单例模式

1》单例模式:保证一个类只有一个实例,并提供一个全局访问点

《1》“实例”通常指的是某个类的具体对象。当你创建一个类的对象时,这个对象就是一个“实例”。

  • 实例是指某个类的具体对象,它是数据结构和方法的集合。

.NET6 WebApi第3讲:控制反转(IOC)和依赖注入(DI)、依赖倒置、服务(如何使用?三种生命周期)、typeof()、Autofac(增强IOC容器)_net6 ioc-CSDN博客

《2》为什么返回引用?——保证唯一性(单例的关键)

返回引用是为了确保单例唯一性、避免拷贝开销【见2》】

《3》代码

2》这个全局的唯一访问点在MainFrame.h中

《1》extern的用途:声明一个变量或函数(.h),并指示该变量或函数实际定义在另一个文件中(对应的.cpp)

《2》代码

在头文件(MainFrame.h)里声明(加上extern),源文件(MainFrame.cpp)中定义(这是全局的唯一访问点)

  • 声明:头文件中的 extern 声明告诉其他源文件(包括实现文件本身)存在这样一个变量,但并不为其分配空间。
    • 你可以在多个文件中包含这个声明,而不会引起冲突。
  • 定义:源文件中的定义则提供了具体的变量实现,分配了所需的内存,并完成了初始化。
    • 每个变量只能有一个定义,否则会导致链接错误(重复定义)。

1)为什么要加 extern ?:让变量可以在多个其它源文件(.cpp)中被访问,但只在一个地方实际定义,避免重复定义错误

    • 其它.cpp文件只需要#include<UaApp/MainFrame.h>,便可以直接使用logger变量了
    • 如果不加extern,那么
      • 每个包含 MainFrame.h 的 .cpp 文件都会生成一个 logger 变量的定义。
      • 链接时就会报错:重复定义错误

    2)为什么logger变量 要 使用引用?

    因为1》中的GetInstance()函数返回值是Logger&引用。

    • 返回引用是为了确保单例唯一性、避免拷贝开销

    3》C++引用作为函数返回值

    《1》基本语法

    注意:只返回静态变量、外部变量或传递给函数的对象成员的引用

    • 如果函数返回的是局部变量的引用,则该引用指向的内容会在函数退出时被销毁,因此会导致悬空引用的问题

    《2》c++引用作为函数返回值的三个作用:

    《3》const在*前后的不同意义:根据“靠近原则”,const关键字更靠近哪一部分,就表示那一部分是常量

    • 如果const位于*的左边(如const int *ptrint const *ptr),则表示指向的内容是常量(指向常量的指针)。
      • 这意味着你不能通过该指针修改所指向的数据,但你可以改变指针本身指向哪个地址。
    • 如果const位于*的右边(如int* const ptr),则表示指针自身是常量(指针常量)。
      • 这表示指针本身的地址是固定的,即指针一旦初始化后,就不能再指向其他地址。但是,如果指针指向的对象不是常量的话,它的值仍然可以通过其他方式修改。

    2>Logger构造函数:设置日期决定当天的日志写入哪个文件,检查并创建日志文件目录(文件名加上当天日期)

    1》GetCurrentDate函数:获取当前时间

    strftime(string format time):标准 C 库函数,用于将时间信息格式化为自定义的字符串表示形式

    2》CreateDirectory函数:创建并检查目录

    对于 Windows 平台,应该包含 <direct.h> 头文件来使用 _mkdir 函数。

    而在 POSIX 系统(如 Linux 和 macOS)上,则应包含 <sys/stat.h><sys/types.h> 来使用 mkdir 函数。

    3》Logger构造函数完整代码

    3>Log函数

    由于2、的Logger类是1>单例模式,所以Logger构造函数只会在代码运行后执行一次。所以日志记录主要功能都在这个Log函数中。

    Log函数的功能:按照日期决定当天的日志写入哪个文件(要防止多个线程同时写入同一个文件,因为在代码多处需要日志记录的地方可能都会调用Log函数)

    1》防止多个线程同时写入同一个文件

    std::lock_guard<std::mutex> lock(mutex_);这一行会在进入作用域时自动对mutex_加锁,并且在离开作用域(即函数结束或出现异常退出时)自动解锁。

    2》Log函数完整代码

    3、调用1、2、【先看2、1>2》】

    二、登录后的主界面

    1、需要先学习CMake,运行SDK的例子

    http://www.dtcms.com/wzjs/216352.html

    相关文章:

  • 做网站用什么ps软件sns营销
  • 自适应网站源码郑州新闻发布
  • 书画院网站建设方案漳州seo建站
  • 英语网站都可以做哪些内容买域名要多少钱一个
  • h5制作网站sem广告
  • 静态网站跟动态网站seo需要用到哪些工具
  • 商城网站建设怎么建设网络营销与直播电商专升本
  • 局门户网站的建设在线推广
  • 怎么在网站里做网页网址链接生成器
  • 广州有什么好玩的游乐场北京百度关键词优化
  • 做色情网站会怎么样seo营销课程培训
  • 济南冷空气来袭提升seo排名的方法
  • 最新钓鱼网站源码实事新闻热点
  • 上海市工商网站官网微信公众号怎么推广
  • 域名停靠app免费下载网站域名注册官网
  • 网站云服务器租用免费广州seo
  • 企业为什么融资seo关键词分类
  • 公司企业邮箱申请seo全网优化指南
  • 专业的设计网站关键词的选取原则有
  • Linux哪个版本做网站好优化是什么意思?
  • 怎么做网站的图片跳转免费网站模板库
  • 我想做网站怎么做seo网页优化工具
  • 专门做地方特产的网站seo排名优化软件有
  • c web网站开发各大网站提交入口网址
  • 博客网站推广seo发帖论坛
  • 订阅号可以做网站链接吗谷歌代理
  • 200平方办公室装修设计上海短视频seo优化网站
  • 网站建设情况说明书教育机构排名
  • 做视频网站是什么职业上海营销seo
  • 制作网站公司图片小吴seo博客