- 博客(13)
- 收藏
- 关注
原创 golang fmt格式“占位符”
转载 https://studygolang.com/articles/2644golang 的fmt 包实现了格式化I/O函数,类似于C的 printf 和 scanf。定义示例类型和变量type Human struct { Name string}var people = Human{Name:"zhangsan"}普通占位符占位符 说明 举例 输出%v 相应值的默
2021-09-11 20:51:17
267
原创 Unicode字符集与多字节字符集
当一个软件打开一个文本时,它要做的第一件事是决定这个文本究竟是使用哪种字符集(ANSI还是UNICODE)的哪种编码(ANSI每个国家都可能不同,UNICODE分为UTF-8,UTF-16,UTF-32)保存的。二者的差距别人已总结的很明白了,我就不在复制一遍了Unicode字符集与多字节字符集Unicode字符集和多字节字符集关系//推荐看这一个,先看的前一个,把我头看晕了=多字节字符集与Unicode字符集其中有wchar_t与char类型间的转换CString的使用以下内容参考c++入门经
2020-05-17 21:20:54
714
原创 bind原理图释及文字说明
参考:https://zh.cppreference.com/w/cpp/utility/functional/bindhttps://www.cnblogs.com/xusd-null/p/3698969.html我们先来看bind的声明可知bind是一个函数模板,且参数列表是可变的,取https://www.cnblogs.com/xusd-null/p/3698969.html中的一个例子理解在使用函数模板bind的时候,1.会在函数模板中创建一个类(这个类是函数对象),类中有已初始
2020-05-15 16:35:18
486
原创 一种在代码中通过启用宏对某些函数实现调用的实现方式
若要启用先定义以下语句,不启用则不定义#define LOG_ENABLE#ifdef LOG_ENABLE #define LOG(x) CLog::WriteLog(x);//CLog::WriteLog(x);在别处已定义 #else #define LOG(x) #endif 因为#define的作用是文本替换,当我们定义LOG_ENABLE时,在预处理阶段,预处理器就会自动将程序中遇到的LOG(x)替换
2020-05-11 13:07:23
513
原创 枚举类--强枚举
c++11增加了枚举类和枚举结构体。旧的c++枚举类型有一个坏处是,他们将枚举成员引入周围的命名空间,导致了名称冲突enum eSecondCount{ eSecond = 1,};int eSecond = 3;//与枚举声明在同一个作用域此外,旧的C++ enum会隐式转换为int,当我们不预期或不需要这样的转换时会导致难以察觉的错误enum eSecondCou...
2020-05-08 17:07:16
359
原创 MFC制作简单的托盘图标
1.头文件.h://添加全局变量#define WM_NC (WM_USER + 1) //托盘消息const CString TRAY_TIP("Bulk Data Export");//添加成员变量与成员函数private: NOTIFYICONDATA m_stNotifyIcon; // 托盘图标 void InitTray();//初始化托盘图标protected:...
2020-05-07 11:29:28
319
原创 条款02:尽量以const,enum,inline替换#define
可理解为“宁可以编译器替换预处理器”:1.#define ASPECT_RATIO 1.653该定义在预处理阶段就展开了,详见https://blog.csdn.net/a1007885391/article/details/105753701的预处理相关,这就导致了ASPECT_RATIO 未进入符号表。这会产生以下两个问题:1.1 运用此常量导致编译错误信息时只会提到1.653而不是AS...
2020-05-06 18:20:49
130
原创 数据库建表有符号 ‘.’导致的问题
今天一个项目在建数据库表名带有小数点,导致创建和删除触发器总是出现莫名其妙的问题。具体原因待有时间再去研究,这里记录一下,防止之后再次踩坑...
2020-04-27 16:17:50
449
原创 #pragma 编译器指令
#pragma 用于设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma 所定义的很多指示字是编译器特有的,在不同的编译器间是不可移植的。预处理期将忽略它不认识的 #pragma 指令,不同的编译器可能以不同的方式解释同一条 #pragma 指令。一般用法:#pragma parameter。 注意:不同的 parameter 参数语法和意义各不相同!以下几点参考http://b...
2020-04-25 22:56:53
563
原创 navicat运行sql文件时错误
记录一个navicat工具运行sql文件时遇到的坑:错误如下:[ERR] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';1.首先将sql文件的内容复制出来...
2020-04-16 16:13:48
6997
1
原创 gcc与g++的区别
1.https://www.zhihu.com/question/20940822参考第一个答案:gcc 最开始的时候是 GNU C Compiler, 如你所知,就是一个c编译器。但是后来因为这个项目里边集成了更多其他不同语言的编译器,GCC就代表 the GNU Compiler Collection,所以表示一堆编译器的合集。 g++则是GCC的c++编译器。现在你在编译代码时调用的gc...
2020-04-15 23:35:53
218
1
原创 liunx下安装或更新至最新版本的git
1.先使用git-version查看自己的git版本,如果提示未找到命令,就可直接进入第三步,如果有显示版本则可上网址 https://github.com/git/git/releases 看下自己的最新版本,在决定更不更新2.卸载旧版本 yum remove git3.安装依赖:sudo yum install curl-devel expat-devel gettext-devel ...
2020-04-08 20:27:56
372
原创 MYSQL中GET_LOCK的使用
GET_LOCK(str,timeout)在timeout 秒内尝试获取一个名字为str的锁, 若成功得到锁返回 1,若操作超时还未得到则返回0 (例如,另一个连接获取到了这个锁未释放),若发生错误则返回NULL (诸如缺乏内存或线程mysqladmin kill 被断开 )。假如你使用GET_LOCK()得到一个锁,当你执行RELEASE_LOCK()时,或你的连接断开(正常或非正常)时,或...
2020-03-19 21:38:54
4566
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人