2016年6月22日 星期三

[教學]用C++寫出表單 (Form) 的簡單方法 (非Visual C++)

本文並不教您如何從頭寫出全部的程式碼
僅說明如何利用Dev-C++這個編輯器來產生「編譯出來是一個表單 (Form)」的程式碼

步驟:


  1. 開啟Dev-C++ (下載連結)


  2. 點選「File→New→Project...」


  3. 會出現一個視窗,選擇「Windows Application」後按「OK」


  4. 它會叫你存檔,選擇一個喜歡的名稱和存檔位置後按「存檔(S)」


  5. 好了,這就是「表單」的程式碼,程式碼的各個部分還有附註解說明


  6. 按下鍵盤上的「F11」編譯並執行,它會叫你選擇執行檔的儲存位置


  7. 選個喜歡的儲存位置後按「存檔(S)」,程式碼就會開始被編譯 (編譯需要一段時間),編譯完成後會出現一個空白乾淨(?)的視窗,這就是我們的程式碼產生的「表單 (Form)」


或許你可以試著亂改這份程式碼,研究一下C++產生表單的方式和程式碼每個部份的功能

程式碼:

2016年6月1日 星期三

給新手的C++教學 (上冊) - B. 遇到困難了? (There are troubles?)

回到「給新手的C++教學 (上冊)」

上一章 (這要怎麼定義上一章啦喂)

本章列出新手在進行本教學的練習時可能會遇到的困難
並提供解決方案
希望能幫助新手們更快、更方便的利用本教學學習新知識!

Q:
看不懂教學在說甚麼QAQ

A:
請問您真的有動手把程式碼用鍵盤打出來,並按下F11執行過嗎?
程式的學習非常依賴自己動手試試看
就像做實驗一樣,在一個字一個字慢慢的打出程式碼的過程中,您才會去觀察規律、猜測其規則、自己修改程式碼來驗證看看,相信很快 (10分鐘內) 就可以掌握觀念!
(真的,不動手試試看就永遠學不會)
這些規則其實是很簡單的,類似小學在玩的益智遊戲,但如果每一個規則都要弄成文字說明,大概在看懂之前就會眼花了吧XD
如果還是不懂,或者理解時間超過10分鐘,歡迎在文章下面留言~
您看不懂,一定還有另一個人也看不懂,所以請別吝嗇,在文章下面勇敢留言說出您遇到的困難吧!

Q:
電腦一直說我的程式寫錯,我不知道為甚麼?
我寫出來的程式就是無法依照預期的方式運作,我不知道為甚麼?

A:
這種情況對新手來說通常不是自己能解決的事,請先參考本教學提供的範例程式碼,並嘗試照著打一遍看看
如果還是出錯,請直接用「複製」、「貼上」的方式,將程式碼貼到你的「Dev-C++」裡面,再按一次鍵盤上的「F11」試試看
當電腦成功讀懂你的程式碼,並且程式是正確執行出預期的結果之後
請再回去比對你原本會出錯的程式碼,找出出錯的原因
這很重要,可以幫助你以後更不會再犯相同的錯誤
如果還是出錯......就代表非常緊急的狀況發生了--本教學的程式碼也錯了!!!
請務必盡快通知小莫,將盡快做修正,感激不盡!
電子信箱:fsps60312@yahoo.com.tw

Q:
怎麼教學看到一半就突然出現看不懂的專有名詞?
怎麼教學看到一半就突然出現還沒教到的東西?

A:
代表小莫沒有考慮好初學者的立場,不小心用到了很專業的術語或進階的語法
請務必盡快通知小莫,將盡快做修正,感激不盡!
電子信箱:fsps60312@yahoo.com.tw

Q:
怎麼辦?上面都沒有提到我的問題QAQ

A:
唉呀呀,你遇到了甚麼問題?
趕快在本章下面留言,或者用任何方式和管道通知小莫
小莫會盡快提供解答,並更新本章內容!
感激不盡!
電子信箱:fsps60312@yahoo.com.tw

下一章 (這要怎麼定義下一章啦喂)

感謝:
(版權所有 All copyright reserved)

給新手的C++教學 (上冊) - 12. 指標 (Pointer)

回到「給新手的C++教學 (上冊)」

上一章

這一章,我們將更深入地探討電腦的運作原理
進而更完善的掌控電腦的記憶體

你會發現,你將會有能力控制更多平常想不到的東西!

你有想過嗎?
當我們宣告一個變數的時候,電腦會撥出一些記憶體來讓程式儲存變數的資訊
但是,電腦的記憶體是有限的,總不可能每一塊記憶體都只有使用一次吧?
這樣的話每一台電腦的記憶體大概都只夠用10分鐘了XD
因此,允許記憶體被重複使用的機制是必要的

為了讓記憶體能夠被重複使用,我們必須確認用過的記憶體中,哪些現在還在使用中、哪些已經使用完畢了
那麼,我們的程式當然只能使用那些已經使用完畢的記憶體,否則修改到其他程式正在使用的記憶體,進而導致其他程式出錯

觀念簡單,但是要有效率地做到這件事 (避免每次找記憶體前都要老老實實的把每一塊記憶體都確認一遍),需要許多先進的演算法知識,而且程式碼寫起來非常的麻煩

放心,這件事連我都不知道怎麼做
所謂「站在巨人的肩膀上」,這種事情不用再由我們自己處理了!
在先人的努力之下,「C++」這個偉大的程式語言,已經讓電腦可以只依據簡單的幾行程式碼,就可以執行許多複雜卻需要經常執行的工作
換句話說
我們在撰寫C++程式碼的時候,只需要告訴電腦「需要使用多少記憶體」和「哪些記憶體已經使用完畢」就好了!

我們在宣告變數的時候,就等於是告訴電腦「恩,我需要這麼多記憶體來儲存這一個變數的資訊」,然後電腦就會把你要的記憶體給你

但是,我們有告訴過電腦「哪些記憶體已經使用完畢」嗎?
有的!

還記得在第十章的時候,我們有提到「每一個變數都有它自己的作用範圍」嗎?
那麼,當正在執行的程式碼位於一個變數的作用範圍外,這個變數所使用的記憶體該怎麼辦呢?
這時我們不會需要用這個變數來儲存任何資訊
也就是,這個變數目前不需要使用記憶體來儲存資訊

電腦學過C++,想當然會利用這個「作用範圍外記憶體就不需要了」的特性
不管是甚麼變數,只要程式執行到它的「作用範圍」之外
電腦就會「自動」把這個變數使用的記憶體當作「使用完畢」
也就是說,現在,這塊記憶體可能是閒置的,或者被其他的程式拿去使用了
如果我們再去修改這塊記憶體,會造成不可預知的錯誤
當然,你還沒開始學習本章的內容,不會知道怎麼在作用範圍外修改這塊記憶體

在作用範圍外修改記憶體?
有需要嗎?
是的,有時候會很需要,請看本章範例
感覺很危險?
是的,使用不當會造成其他程式的錯誤,甚至讓整台電腦當機,必須將電腦插頭拔掉再重新開機

因此,在學習本章前,請務必將重要資料存檔,以避免造成不必要的損失

嘿嘿嘿~
現在
我們開始吧XD