上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 35 下一页
摘要: Go语言将数据类型分为四类:基础类型、复合类型、引用类型和接口类型。基础类型包括:数字、字符串和布尔型。复合数据类型包括:数组和结构体。引用类型包括指针、切片、字典、函数、通道,它们都是对程序中一个变量或状态的间接引用,这意味着对任一引用类型数据的修改都会影响所有该引用的拷贝。 一:整型和运算符 1 阅读全文
posted @ 2017-11-08 21:39 gqtc 阅读(786) 评论(0) 推荐(0)
摘要: 26:尽可能延后变量定义式的出现时间 1:只要你定义了一个变量而其类型带有一个构造函数或析构函数,那么当程序的控制流到达这个变量定义式时,你便得承受构造成本;当这个变量离开其作用域时,你便得承受析构成本。即使这个变量最终并未被使用,仍需耗费这些成本,所以你应该尽可能避免这种情形。 2:像下面这个函数 阅读全文
posted @ 2017-10-18 08:19 gqtc 阅读(339) 评论(0) 推荐(0)
摘要: 1:Go是一门编译型语言,Go语言的工具链将源代码和其依赖一起打包(静态编译),生成机器的本地指令。 2:假如你没有在代码里import需要用到的package,程序将无法编译通过,同时当你import了没有用到的package,也会无法编译通过(译注:Go语言编译过程没有警告信息,争议特性之一)。 阅读全文
posted @ 2017-10-17 07:55 gqtc 阅读(188) 评论(0) 推荐(0)
摘要: 一:命名 1:Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的标识符命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。注意,这里的字母是指Unicode编码字母,因此Go语言开发者可以在代码中自由地使用 阅读全文
posted @ 2017-10-16 08:47 gqtc 阅读(385) 评论(0) 推荐(0)
摘要: 项目中使用Redis来记录用户的上线和下线信息,其中用到了集合(sets)类型,某用户上线时,向sets中添加数据,下线时将相应数据从sets中删除,考虑当该用户的所有实例都下线时,需要将sets删除。 因为是并发操作,就考虑到判断为空后进行删除操作的原子性,查了一堆资料,都已经写好了相应的lua脚 阅读全文
posted @ 2017-10-13 11:23 gqtc 阅读(2079) 评论(0) 推荐(0)
摘要: 18:让接口容易被正确使用,不易被误用 1:理想上,如果客户企图使用某个接口而却没有获得他所预期的行为,这个代码不该通过编译;如果代码通过了编译,它的作为就该是客户所想要的。 2:许多客户端的错误可以因为导入新类型而得到预防。比如下面的接口: 这个接口很容易使客户犯错,比如: 通过引入新的类型来区分 阅读全文
posted @ 2017-10-08 16:52 gqtc 阅读(204) 评论(0) 推荐(0)
摘要: 现象: 某个线上的服务最近频繁崩溃。该服务使用C++编写,是个网络服务端程序。作为TCP服务端,接收和转发客户端发来的消息,并给客户端发送消息。该服务跑在CentOS上,8G内存。线上环境中,与客户端建立的TCP连接大约在3~4万左右。 使用GDB查看每次崩溃产生的core文件,发现崩溃时的函数调用 阅读全文
posted @ 2017-09-22 21:30 gqtc 阅读(977) 评论(0) 推荐(0)
摘要: 所谓资源,就是一旦用了它,将来必须还给系统。C++中的资源有:内存、文件描述符、互斥锁、数据库连接、网络socket等。 13:以对象管理资源 1:像下面这个函数: 这个函数中,会有若干情况的发生导致无法执行delete语句,比如”...”内可能有一个过早的return语句;或者createInve 阅读全文
posted @ 2017-09-22 09:22 gqtc 阅读(164) 评论(0) 推荐(0)
摘要: 05:了解C++默默编写并调用哪些函数 1:一个空类,如果你自己没声明,编译器就会为它声明(编译器版本的)一个copy构造函数、一个copy assignment操作符和一个析构函数。此外如果你没有声明任何构造函数,编译器也会为你声明一个default构造函数。所有这些函数都是public且inli 阅读全文
posted @ 2017-09-22 09:07 gqtc 阅读(158) 评论(0) 推荐(0)
摘要: 01:视C++为一个语言联邦 1:今天的C++已经是个多重范型编程语言(multiparadigm programming language),一个同时支持过程形式(procedural)、面向对象形式(object-oriented)、函数形式(functional)、泛型形式(generic)、 阅读全文
posted @ 2017-09-22 08:20 gqtc 阅读(203) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 35 下一页