自制编程语言 8.0分
读书笔记 表达式求值----eval.c
static CRB_Value
eval_int_expression(int int_value){
CRB_Value v;
v.type = CRB_INT_VALUE;
v.u.int_value = int_value;
return v;
}

对于int, long这种类型的表达式求值,其实就是将c语言的原始类型包装成一个CRB的类并且返回。

需要注意的是string对象,实现上使用引用计数来回收内存。

对于二元表达式求值的话,要注意类型转换的问题,先转换为较小范围的类型,再进行原始类型求值,并且返回包装类

1
《自制编程语言》的全部笔记 2篇
豆瓣
免费下载 iOS / Android 版客户端