matlab 规范,matlab-代码-规范

41528d3028836879cd698677c3999917.gifmatlab-代码-规范

1. 标识符命名原则 标识符的名字应当直观,其长度应当符合“最小长度,最大信息量”原则。 1) 非矩阵变量: Ø 变量名应该以小写字母开头的大小写混合形式 譬如:shadowFadingTable,servingSector, rxBufferForRe userID,userPriorityProfile,mcsOneRetri等 Ø 循环变量应该以i、j、k等为前缀,如 for i_File = 1:nFiles for j_Position = 1:nPositions Ø 避免仅用最后的字母s(表示单复数)区别两个变量, 例如point和points. 可以用类似pointArray的形式加以区别。 Ø 避免使用一个关键字或者特殊意义的字作为变量名 Ø 结构体的命名应该以一个大写字母开头,结构体的命名应该是暗示性的,并且不需要包括字段名(fieldname)应采用Segment.length,避免用Segment.SegmentLength 2) 常数: Ø 命名常数(包括全局变量)应该采用大写字母,用下划线分割单词,如MAX_ITERATIONS,COLOR_RED Ø 参数可以以某些通用类型名作为前缀,如COLOR_RED,COLOR_GREEN 3) 草稿变量,含矩阵,结构体,元胞: Ø 应用范围比较大的变量应该具有有意义的变量名,作为“草稿变量”的的临时存储空间或者索引可以用短名字。程序员在读到这样的变量的时候,可以假定这个变量的值在没有几行之后的代码中就不会再用到。通常的“草稿变量”整数的时候用i,j,k,m,n(最好少用i,j,因为他们作为MATLAB中的永久性常量表示虚数单位的)。双精度数的时候常用x,y和z。m表示矩阵,没有m表示标量 Ø 命名上将cell, struct与MATLAB中最常见的numeric array, 即数值矩阵区分开来. Ø n用于整数变量, 如n_File. Ø m用于一般的矩阵,如matrix_channelHFResponse; Ø c用于cell array, 如cell_temp= cell(1, 4); Ø s用于struct array, 如stuct_user= struct( field , {}); Ø matrix,cell,stuct后面的channelHFResponse, user用来表示有特定含义的中间变量,比如matrix_channelHFResponse,用来表示计算channelHFResponse时中间变量。 4) 函数: Ø 函数名应该采用小写字母,函数名应该是具有意义的,下划线分割单词 如采用: compute_total_width()避免compwid() Ø 前缀get/set 应该作为访问对象或者属性的保留前缀,如getobj(.)。 Ø 前缀compute应该用在计算某些量的函数的地方computespread()。 Ø 前缀 is应该用在布尔函数的命名的地方,如 iscomplete()。 Ø Find,initialize类似。 2. 编码及文档注释要求及实例 2.1 代码版式 2.1.1 M文件函数说明 function [ 函数输出参数] = 函数名( 函数输入 ) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %此处为函数名,如果不是函数文件就取消此行 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %创建人: %日 期: %修改人: %日 期: %函数变量及功能的简单描述 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --函数主体 2.1.2 编码设计 本部分说明了M文件编码的设计,包括以下几个方面: 垂直间隔,水平间隔,缩进与对齐,注释。 2.1.2.1 垂直间隔 1、空行 空行起着分割块或段落的作用,块(段落)之间一般留一个或两个空行。 空行使用规则: Ø 逻辑块之间要留空行; Ø 结构体定义之间要留空行; Ø 函数定义体之间要留空行; Ø 函数体内,完整的控制结构和单独的语句块之间要留空行; Ø 逻辑上密切相关的语句序列之间不要留空行; 2、换行注意事项 Ø 不在一行使用多个语句。唯一的例外是for语句。For语句的初始化,条件和循环都可以在一行中。例如 for (bcnl_num = 0; bcnl_num count) bcnl_num = count; Ø {}与case总是独占一行。 2.1.2.2 水平间隔 Ø 逗号后面要有空格,但是不要在结构的成员与指针操作符前后有空格。例如: foo.index Ø 在 =, } 2.1.2.4 代码行及行内空格 (1) 代码行中不运行出现中文。 (2) 关键字后要留空格。像const、inline、case等关键字后要留空格,以辨析关键字;像if、for、do、while、switch等关键字后要留空格再跟左括号“(”,以突出关键字。 (3) “(”若不在一行的开始,应与前面的字符空格。例如,if、while、do-while、switch、for语句等控制结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/275606.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zoom视频会议官网_人性化视频会议的空间(Zoom等)

zoom视频会议官网第二部分:房间的创造力 (Part Two: The Creativity of Rooms) In Part One I shared thoughts on how virtual spaces can often leave little room to embody our most human selves. The lack of a public sphere that parallels our shared publ…

KOFLive Postmortem

为期两个月的团队项目完成了,我们的游戏也已经发布。在这个名叫KOFLive的小游戏里,我们集成了五个真人角色,每个角色有拳脚基本招数以及三个小招、一个大招,硬值、防御、集气、双人对战、人机对战、练习模式等格斗游戏的Feature基…

单调队列优化多重背包

就是按照 % 体积的余数来分组&#xff0c;每组单调队列优化。 直接上模板好了。 1 #include <bits/stdc.h>2 3 typedef long long LL;4 const int N 100010;5 6 int n, V, cnt[N], cost[N];7 LL f[2][N], val[N], p[N], top, head;8 9 inline void Max(LL &a, const…

2021年7月 虾皮、货拉拉、有赞等面经总结

大家好&#xff0c;我是若川&#xff0c;加我微信 ruochuan12 进源码交流群。今天分享一篇7月份新鲜出炉的面经&#xff0c;文章较长&#xff0c;可以收藏再看。学习源码系列、面试、年度总结、JS基础系列。本文来自作者几米阳光 投稿 原文链接&#xff1a;https://juejin.cn/p…

谷歌抽屉_Google(最终)会杀死导航抽屉吗?

谷歌抽屉A couple of months ago Google has celebrated with enthusiasm 15 years of Google Maps, one of the most used and appreciated services worldwide from the company.几个月前&#xff0c;Google热情地庆祝Google Maps诞生15周年&#xff0c;这是该公司在全球范围…

MySQL——安装

MySQL——安装 1. 下载源&#xff1a; http://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_64/mysql80-community-release-el7-2.noarch.rpm 该源目前为8.0版本&#xff0c;如果需要最新请退至根目录找。 1wget http://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_…

axure9控件树 rp_如何在Axure RP 9中创建分段控件

axure9控件树 rpSegmented controls are not very easy to tackle in prototyping. This is especially true when you have more than 2 segments. This article will show you how to create a segmented control with 3 segments in Axure in just 2 simple steps. The tech…

【送书-小姐姐配音】低代码平台的核心价值与优势

大家好&#xff0c;我是若川。记得点上方听小姐姐配音&#xff0c;识别下方二维码加我微信 ruochuan12&#xff0c;明天&#xff08;8月8日&#xff09;晚8点在朋友圈发动态。点赞抽3位小伙伴包邮送《实战低代码》&#xff0c;细则见动态。最近组织了源码共读活动&#xff0c;每…

sketch钢笔工具_设计工具(Sketch,Adobe XD,Figma和InVision Studio)中奇怪的一项功能

sketch钢笔工具When you build a new product that is very similar to the existing products in the market, the designers and product managers tend to do certain features different from others. Sometimes this brings a good change, sometimes worse.当您构建与市场…

Python进阶:如何将字符串常量转化为变量?

2019独角兽企业重金招聘Python工程师标准>>> 前几天&#xff0c;我们Python猫交流学习群 里的 M 同学提了个问题。这个问题挺有意思&#xff0c;经初次讨论&#xff0c;我们认为它无解。 然而&#xff0c;我认为它很有价值&#xff0c;应该继续思考怎么解决&#xf…

尤雨溪开发的 vue-devtools 如何安装,为何打开文件的功能鲜有人知?

1. 前言大家好&#xff0c;我是若川。最近组织了一次源码共读活动。每周读 200 行左右的源码。很多第一次读源码的小伙伴都感觉很有收获&#xff0c;感兴趣可以加我微信 ruochuan12&#xff0c;拉你进群学习。第一周读的是&#xff1a;据说 99% 的人不知道 vue-devtools 还能直…

sketch浮动布局_使用智能布局和调整大小在Sketch中创建更好的可重用符号

sketch浮动布局Sketch is a widely used tool for UI designs. It implemented the Sketch是用于UI设计的广泛使用的工具。 它实施了 atomic design methodology and made the workflow of UI design much more efficient. You can create a Symbol in Sketch and use it ever…

小姐姐笔记:我是如何学习简单源码拓展视野的

大家好&#xff0c;我是若川。这是我上周组织的源码共读纪年小姐姐的笔记&#xff0c;写得很好。所以分享给大家。欢迎加我微信 ruochuan12&#xff0c;进源码共读群。其他更多人的笔记可以阅读原文查看。川哥的源码解读文章&#xff1a;据说 99% 的人不知道 vue-devtools 还能…

保持危机感和紧迫感_什么是紧迫的:您需要知道的一切

保持危机感和紧迫感Putting the finishing touches on a graphic design project calls for a keen eye. But you already know this, because perfectionism is just a part of the job! You look at every nook and cranny of a project before you can consider it complete…

如何系统搭建现代 Web CI/CD

大家好&#xff0c;我是若川。今天分享一篇00后写的CI/CD直播文字稿。之前发过他的故事&#xff1a;一位00后前端2年经验的成长历程。我最近组织了源码共读活动&#xff0c;感兴趣的加我微信 ruochuan12。本次直播录播链接&#xff1a;https://live.juejin.cn/4354/595741[1]开…

sqlserver oracle 数据类型对应关系,SQLSERVER和ORACLE数据类型对应关系详解和对应表格整理...

Oracle SQLServer 比较 SQLServer 常见的 数据 库 类型 字符 数据 类型 CHAR CHAR :都是固定长度字符资料但oracle里面最大度为2kb&#xff0c;SQLServer里面最大长度为8kb 变长字符 数据 类型 VARCHAR2 VARCHAR :racle里面最大长度为4kb&#xff0c;SQLServer里面最大长度为8k…

ui边框设计图_UI设计形状和对象基础知识:填充和边框

ui边框设计图第2部分 (Part 2) Welcome to the second part of the UI Design shapes basics. This time we’ll cover two of the most essential properties of a shape — fills and borders. This is also a part of the free chapters from Designing User Interfaces.欢迎…

如何移除项目中无用的 console.log 代码

大家好&#xff0c;我是若川。早些天时&#xff0c;我看到一个后端公众号发《辞退了一个前端》&#xff0c;当时还想着现在后端公众号都开始吊打前端了嘛。其中有个理由就是线上还一堆console.log...我猜很多人都会移除项目中无用的console.log。可以复习一下。前言说起console…

远程连接 错误 内部错误_关于错误的性质和原因。 了解错误因素

远程连接 错误 内部错误Back in 2012, I was a young[er] product designer working in a small tech agency in Valencia, Spain. In parallel, I worked as a freelancer on several side projects for different clients. One day I was contacted by a new health services…

得到鹅厂最新前端开发手册一份

又逢金九银十&#xff0c;拿到大厂offer一直是程序员朋友的目标&#xff0c;但是去大厂就得拿出实力来。除了需要积累技术&#xff0c;了解并掌握面试的技巧&#xff0c;熟悉大厂面试流程&#xff0c;也必不可少。这里分享一份最新入职腾讯的前端社招面经&#xff0c;来看看鹅厂…