5 [. _7 D* M) C) |& z# A& {% J12 多读matlab高手写的程序,帖子,找到一个高手,在几个大的论坛可以搜索出一大堆的帖子,然后慢慢去看吧,从中可以学到很多东西,也许你会发现很多你都看不懂,这很正常,别人写程序考虑的是能实现这样的功能,运行效率等问题,而不是考虑是不是很容易能让别人理解,你就看你现在能看懂,再看些通过你断点调试,查help能看明白的,看不懂的就先放下,遇到好的和看不懂,你又很挺感兴趣的话题,你先收藏起来,过段时间你再回头看看,你会发现,每看一遍,你就会多懂一些东西,当你第三遍甚至第四遍看同一个程序的时候,也许你就会有豁然开朗的感觉。一个比较长的程序,首先不要怕长,把它分解成一句一句,一句一句看懂它。要明白一口吃不成胖子,好东西要慢慢体会,才能领会。! |9 M( Z" M9 A0 r4 b) R
& `, ~/ p+ i0 v8 Z' P! }" T13 电脑上复制粘贴很方便,对于别人解决的你专业上的问题,最好自己写一遍,这样印象深刻,对于不懂的函数用法的函数,help中查查,能看懂多少算多少,对于程序断点调试一遍,弄清楚每个语句的功能, , h/ \* t. g. a14 尽量摆脱c编程的习惯,总爱用循环,能不用的循环的尽量不用,掌握矢量化的精髓: V7 C3 V- x+ P1 i
15 善于总结,学习过的知识,看过好的帖子可以收藏起来,过段时间再复习一下,一段时间的积累,你会发现你的水平在慢慢提高 ' m& H# q2 P+ ?2 b. g7 V16 多用help,see also lookfor get,set 等常用命令: |! K' J" ?" s g# W" Y/ ^+ _7 D
17 要大胆的去试,试过才知道可不可以,如有人问可不可以把多个子程序放在一个m文件中,呵呵,试试不就知道了5 I q* D; p1 q
+ @/ b; q, i1 B$ ^' i/ w! U% ~
18 多参与讨论,不要只关心自己的问题,也经常关注别人的帖子,从中也可以学到不少东西的 : `4 e$ J( @9 A & n \4 V, `9 d' m3 x9 f19 提醒一句,不要做只会下资料而不看的收藏家,这样对你没什么意义,书不在于多,真的看一两本书也就够了,以后要用的时候,再去查书,一味的东看看西看看,见了别人的资料,不关好不好,就留信箱的人,我感觉也不该这样,有了那么多资料,就别想着还有没有比这更好的了,开始学吧先写这么多吧,希望对新手能有点用 : Y( O+ [9 ?5 D$ E4 s* h( P感觉语言是相通的,不一定只针对matlab这门语言 ( P% X# H3 b g% o+ V( p如何写程序,如果你还是初学者,那么尽量不要复制粘贴,那样你是永远也无法学会写程序的。另外也不要对着别人的程序,一个字一个字敲进去,那样的话你只能成为一名优秀的打字员。一个比较好的方法是先读懂他,理清他的思路,然后自己动手写,写不出来的时间再看看别人的程序,然后对照的看,你的和他的程序差异在哪里,写的过程就是提高的过程。 y& x* b" A7 A
程序运行有错误怎么办,好多错误。首先,别害怕错误,这是每一个人都会碰到的问题,大牛,小虾都一样,你对你自己说 这不机会又来了,调程序的过程就是提高的过程。不要一遇到错误就来论坛发问了,如何调,关键是看错误提示,看错误的类型及出现在哪条语句上。5 f! y# _8 s ^
好好练自己的调试能力,这不仅可以帮你找到一些错误,有是碰到一些读不懂的程序,借助断点调试可以帮你读懂程序) Q, [1 j$ V9 G! Q, k+ r2 M/ [
还不行怎么办,用搜索引擎找答案(有时候把错误提示输进去就可以找到答案了) 2 c* q7 E$ V# U' c- ^. U还不行,这才发贴和别人交流4 U* ~2 G( a5 A- I' B7 }
。。。。 + q6 k+ \/ x+ I写程序原则 尽量写的简单 通俗容易懂,让那些不如你聪明的人都能看懂,命名的时候做到见名知意,写的时间多加点注释,不然,不要说别人读不懂你的程序,等过几天,你自己也读不懂了,可以看看matlab里的函数,注释也写的很详细,当你觉得有些方法比较常用的时候,你可以封装成函数,加上一些说明,以后要用的时候,直接调用就可以了,注重代码的重用性。! I( c C' m4 j6 U2 V8 m; H; s
勿在浮砂筑高台,基础很重要,为什么学matlab ,如果你只是把它当成 c c++的附属品,用这些语言的思维来写一些奇怪的类matlab程序,我想你还是直接用c 或 c ++更合适,不要一开始就想着用matlab 做出什么东西,好好看一本matlab的基础书,这些基础对你以后的进阶会很有帮助。再说混合编程,什么都不懂就想着去混合编程是不实际的,maltab版本 vs 的版本不同,都会对混合编程影响的。 * ~5 E( K# d# |; p8 i所以结果是对着别人的例子来做也不一定会做出来,一是别人讲的有些细节问题没讲清楚,二是版本问题。就算做出来,如果不明白为什么要这样做,又有多大意义呢。然后自己做一个,又不会了。. V4 n2 \+ x1 A
说这些的目的无非是希望想做混合编程的朋友多了解一些基础的东西,否则在混合编程这一块上会浪费很多时间,结果还是没有解决问题。3 Z1 g4 V- K' H$ t9 {
7.0系列 深入浅出matalb混合编程这本书是值得一看的。0 A/ B6 { w9 Z
多看帮助之类的话这里就不多说了。