eos c++编码规范:
1.int,long,long long ...会因为平台不同而导致不同的位数,推荐用int16_t,int32_t这种类型,增强跨平台性;
2.string和vector推荐用,不要自己造轮子;
3.c++的参数传引用会提升性能,如果不想改变引用的对象,建议用const关键字修饰引用;谷歌编码规范要求所有引用参数都用const修饰;
4.不同指针的本质都是一样的,是32位还是64位取决于你的硬件,sizeof(int*) == sizeof(string*);
5.不推荐使用多继承;
6.模板,迭代器 在智能合约开发中常用;
7.lambda在智能合约开发中常用,遍历,排序这些地方用的多;lambda开头,传值的时候用[=],传引用的时候用[&],混合开发用[=,&]; lambda的原理其实就是通过创建一个小的class,重载操作符(),实现类似函数的功能;
8.多索引表只有一个主键且必须唯一,其他非主键可以相同;支持有序和无序插入;
9.c++分离了声明(.hpp, .h)和定义(.cpp),编译时根据声明找定义;好处是:1.提升编译速度;2.接口和实现分离更易读;3.有时候编译仅仅需要头文件而不需要源文件;