- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
matlab转译成c/c++需要注意的细节
1.1 主程序说明、子函数说明以及头文件示例
(1)版权信息。
(2)文件名称,摘要。
(3)当前版本号,作者,完成日期。
(4)版本信息。
/*
* Copyright (c)
* All rights reserved.
*
* 文件名称:filename.h
* 摘 要:简要描述本程序的内容
*
* 当前版本:1.0
* 作 者:输入作者名字
* 完成日期:2011年11月20日
*/
图1.1 主程序说明
/*
*函数名称:Templat(BYTE *m_pdata, int wide, int height, int tempH, int tempW,int tempMX, int tempMY, float fpArray, float,fCoef)
*函数类型:void
*参数:BYTE* m_pdata:指向原图像指针
* int wide:原图像宽度
* int height:原图像高度
* int tempH:模板高度
* int tempW:模板宽度
* int tempMX:模板的中心元素X坐标
* int tempMY:模板的中心元素Y坐标
* float *fpArray:指向模板数组的指针
* float fCoef:模板系数
*返回值:处理成功返回TRUE;处理失败返回FALSE。
*功能:用指定模板对灰度图像进行操作。
*/
图1.2 子程序说明
#ifndef GRAPHICS_H // 防止graphics.h被重复引用
#define GRAPHICS_H
#include math.h // 引用标准库文件
…
#include “myheader.h” // 引用自定义的库文件
…
void Function1(…); // 全局函数声明
…
class Box // 类结构声明
{
…
};
#endif 图1.3 头文件结构示例
1.2 程序的版式
(1)程序的空行起着分隔程序段落的作用。空行得体可使程序的布局清晰。函数体外的空行,在每个类声明之后、每个函数定义结束之后都要加空行。函数体内,逻辑上关系密切的语句不加空行,其它地方应加空行分割,从而增强程序的可读性。
(2)书写程序时代码行的基本要求:if、for、while、do等语句自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加{}。这样可以防止书写失误。
(3)对齐操作:程序的分界符‘{’和‘}’应独占一行并且位于同一列,同时与引用它们的语句对齐,{ }之内的代码块在‘{’右边数格处左对齐。
(4)程序的注释。边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。注释应当准确易懂,不加多余的注释。
1.3 程序的命名规则
函数和变量的命名规则大致遵循以下几个原则:
(1)使用通用的共性的一些变量,如通用的循环变量i,j,m, n;
(2)函数和变量的命名要直观且可以拼读,可望文知意,并且与所编写的程序相关联,字符之间使用下划线来分割单词,如R_data, G_data, B_data;
(3)全局变量前加上字母g_, 以便于与局部变量相区分,程序中不要出现标识符完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但会使人误解;
(4)变量和参数用小写字母开头的单词组合而成,常量全用大写的字母,用下划线分割单词。
(5)了防止某一软件库中的一些标识符和其它软件库中的冲突,可以为各种标识符加上能反映软件性质的前缀。例如计算机视觉技术标准OpenCV的所有库函数均以cv开头,所有常量(或宏定义)均以CV开头。
1.4 表达式和基本语句
(1)C++/C语言的运算符数目很多,优先级和结合顺序差异很大, 一元运算符 + -
文档评论(0)