assert

Python assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux 系统下运行,可以先判断当前系统是否符合条件。 语法格式: 1assert expression 等价于: 12if not expression: raise Assert...

Posted on Programming

箭头函数

箭头函数是一种更好的创建函数的方式。 let func = (arg1, arg2, ...argN) => expression 也就是: 123let func = function(arg1, arg2, ...argN) { return expression;}; 示例以下这个函数可以将传入的两个变量相加: 12let sum = (a, b) =&g...

Posted on Programming

array与vector

C++允许我们以内置的array 数组类型或标准库提供的vector 类来定义容器。 array定义array,需要: 指定array的元素类型 给予array一个名称,并指定其尺度大小(即array所能够储存的元素数量) array的大小必须是一个常量表达式(不需要在运行时求值) 例: 12const int seq_size = 18;int pell_seq[ seq_size ]...

Posted on Programming

文件读写

要完成文件的读写,首先要包含fstream 头文件。 打开文件输出模式1ofstream outfile( "seq_data.txt" ); 在输出模式下: 文件不存在,则文件被创建。 文件存在,则文件被打开,原有数据被丢弃。 追加模式12345678// 首先需要检验文件是否可以成功打开。最简单的方法是检验class object的真伪if ( ! outfile ) // cer...

Posted on Programming

异步

python由于GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病。然而在IO密集型的网络编程里,异步处理比同步处理能提升成百上千倍的效率,弥补了python性能方面的短板,如最新的微服务框架japronto,resquests per second可达百万级。 同步与异步同步是指完成事务的逻辑,先执行第一个事务,如果阻塞了,会一直等待,直到这个事务完成,再执行第二个事务...

Posted on Programming

main函数,类与命名空间

main函数每个C++程序都从一个名为main 的函数开始执行。 1234int main(){ // code} 以上是一个函数的结构,其中包括: 返回值类型 return type 函数名称 参数列表 parameter list 函数体 function body int 规定了返回值的类型,意味着这个函数返回一个整型。 main 是函数名称。main 并...

Posted on Programming

错误处理

使用错误处理来应对程序执行中可能遇到的错误。通过在函数的声明中添加throws关键词来抛出错误信息,如下: 123func canThrowError() throws { // …} 由于这个函数可能抛出错误信息,因此应当使用try语句。 以下是一个使用了do语句的例子: 12345do { try canThrowError()} catch ...

Posted on Programming

构造函数

基础概念使用场景:需要重复创建很多类似的对象。 关键词: new 语法: 技术上是常规函数。 两点约定: 命名以大写字母开头,如User 。 只能以new 操作符来执行。 主要目的: 实现可重用的对象创建代码。 引例12345678910function User(name) { this.name = name; this.isAdmin = false;...

Posted on Programming

对象的定义与初始化

定义对象 需要对其命名,并且赋予数据类型。 不能以数字开头;不能和系统关键字一致。 例如: string username 初始化对象例如,将a, b两个对象设定初值为0: 12int a = 0;int b = 0; 等价于 单一声明语句 int a = 0, b = 0 构造函数语法1int a(0); 构造函数语法用于一些包含有多个初值的对象,例如标准库中的复数(complex ...

Posted on Programming

可选类型

使用可选类型(optionals)来处理值可能缺失的情况。可选类型表示两种可能: 或者有值, 你可以解析可选类型访问这个值, 或者根本没有值。 例子: 12let str = “123”let num = Int(str) 这段代码将变量str转换为num。显然,转换可能失败。由于str包含无法被转化为Int类型的值,它返回一个可选类型Int(写作Int?),表示它可能包含Int值,也可能...

Posted on Programming