自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 第11条 尽量使用零值可用的类型

go语言中每个原生类型都有其默认值。所有整型类型:0;浮点类型:0.0;布尔类型:false;字符串类型:"";指针、interface、切片、channel、map、function:nil零值可用:即使其默认值是nil,也是可用的。并非该类型的所有方法零值都可用。并非所有原生类型都零值可用,比如map。

2023-07-09 17:47:17 40

原创 C++ 深入理解 Public, Private, Protect

一文看懂C++ public, private, protect =>

2023-05-21 15:03:51 164 1

原创 C++ 警惕 头文件中的static变量

如果说 全局变量“不受时间和空间限制”,那static变量是“不受时间限制,但受空间限制”。“不受时间限制”是指到程序运行结束时才释放,“受空间限制”是指 仅能在特定的作用域中使用。头文件中的全局变量,可以被引用该头文件的源文件共享;而头文件中的static变量,不能被引用该头文件的源文件共享,这些源文件中的同名static变量彼此独立。下面是一个代码示例。照此理解,应优先考虑使用static变量而非全局变量,前者“权限”更小,更安全。

2023-05-21 15:02:32 211 1

原创 理解c++中的声明和定义

我们经常说的判断语句,如“它是一只猫”,其实包含着“它存在”这一前提。我理解的“声明”是为了说明“它存在”,而“定义”是为了说明“它是什么”。这与程序的编译运行过程有关。编译过程更关心“是否被声明”,而链接,运行过程更关心“是否被定义”。比如我说“请给我拿杯水”,服务员首先考虑“世界上确实存在水”,再考虑“在哪儿可以得到水”。假如“请给我拿杯水”是程序指令,那编译过程只关心“是否已声明水,水是否存在”,而链接,运行过程则关心“是否定义了水,水在哪儿”。

2023-05-21 15:00:09 86 1

原创 C++ extern:必须使用extern的场景

test1.cpp 和 test2.cpp 中都引用了test.h,test1.o和test2.o中都有 kVar 的符号定义,所以在链接时才会报重复定义的错误。解决此问题要在test.h中声明 kVar,且仅在一个.cpp文件中定义kVar,确保kVar仅被定义一次。即使不使用extern,在头文件中定义的全局变量,也可以被引用了该头文件的外部源文件使用。一开始提到的困惑是 “即使不使用extern,在头文件中定义的全局变量,也可以被引用了该头文件的外部源文件使用”。只在头文件中声明,不在头文件中定义。

2023-05-21 14:59:03 148 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除