王吉
摘要:C++作為一門面向對象程序開發設計語言,一直以來受到了很多開發者的青睞,目前,使用C++作為開發語言的市場占比排名在所有開發語言中排前5位。初學C++者,一般都是使用Microsoft Visual C++ 6.0進行開發設計。由于初學者多半先學習了C語言,初學C++并使用Microsoft Visual C++ 6.0進行程序設計的時候就會出現一些常見易錯問題。本文總結初學者使用Microsoft Visual C++ 6.0進行編程的一些易錯問題,便于初學者參考使用,在學習C++的路上少走彎路。
關鍵詞:C++;面向對象;程序設計
中圖分類號:TP311 文獻標識碼:A 文章編號:1007-9416(2020)01-0229-01
0 引言
多年從事高職高專學生的C++面向對象程序設計語言教學工作,在教學中發現,由于高職高專學生基礎較為薄弱及課程設置等相關問題,導致絕大部分學生在學習C++程序設計過程中,尤其是使用Microsoft Visual C++ 6.0進行程序設計時,容易出現一些常見易錯問題。C++程序設計一般來說均是高職學生接觸的第一門面向對象程序設計語言,其面向對象的編程思想和方法有別于C語言以及學生常規性思維。本文總結一些常見的初學者容易出現的錯誤類型,便于感興趣的初學者借鑒使用,提高大家的學習興趣和學習效率。
1 易錯問題及解決方案
1.1 頭文件問題
使用Microsoft Visual C++ 6.0進行C++語言程序設計不同于C的一大特點之一,C++程序設計一般都要求需要先使用#include命令包含需要使用到的頭文件,例如程序需要使用cin及cout輸入輸出命令,則需要首先包含iostream文件,否則就會編譯不成功,會出現cin、cout未定義以及>>、<<類型錯誤的錯誤提示。
1.2 名字空間問題
類似于頭文件問題,進行C++程序編譯時,需要將有關的名字空間包含進來。例如在頭文件問題闡述中,為了使用Microsoft Visual C++ 6.0已經定義的輸入輸出語句cin、cout以及<<、>>,光是包含了頭文件iostream是不夠的,。此時一樣會出現cin、cout未定義以及>>、<<類型錯誤的錯誤提示。還需要使用using namespace命令將std名字空間包含進來,因為Microsoft Visual C++ 6.0對于cin、cout以及>>、<<的定義是放在std名字空間里面的。
1.3 多個main函數問題
C++程序強調一個工程有且僅有一個主函數。但是在實際學習和編程中,很多初學者往往習慣性在一個工程下新建多個.cpp文件,且每一個.cpp文件里面都有一個主函數。此時,程序編譯必然不通過。此時,我們至少可以有兩種解決辦法,一是新建多個工程,并對應每個工程新建一個.cpp文件,將已經編寫且有主函數的代碼復制到新建.cpp文件;二是將所有包含主函數的代碼均復制到粘貼到一個新建文本文檔里面,因為文本文檔不會改變代碼格式,需要的時候一個個復制到Microsoft Visual C++ 6.0中運行即可。
1.4 WinMain@16錯誤問題
由于初學者編寫代碼質量不高,邏輯也常有一定問題,因此有時會出現WinMain@16這種錯誤類別。對于此類問題,只需打開Microsoft Visual C++ 6.0“工程”菜單,找到“設置”,選擇“C/C++”項,將C預處理程序定義中:Windows改為_CONSOLE,然后選擇“Link”項,將“Project Options:”項下面的Windows也同樣改為_CONSOLE,重新運行程序即可。
1.5 多文檔管理時的文件名及其使用問題
Microsoft Visual C++ 6.0提供多文檔管理協同開發的功能,一方面簡化單一文檔代碼復雜度,同時還增加了代碼可讀性。但對于初學者來說,多文檔的管理似乎又是一個復雜的問題。進行多文檔管理時,我們主要關注的文檔為兩類,第一類是.h文件,我們稱之為頭文件,一般用于定義類,并且包含了所有需要使用到的系統頭文件;第二類是.cpp文件,我們稱之為資源文件,主要實現類的函數、主函數以及其它需要實現的代碼部分。每個文件的文件名一般都是用戶自定義的,創建文件后,可以文件視圖(FileView)下查看每一個文件名稱。進行多文檔管理后,對于的.cpp文件就需要包含相應的.h文件,而此時的包含方式使用#include"自定義頭文件"名的格式實現,和包含系統頭文件的#include<義頭文件>有所區別。
1.6 其它常見問題
對于初學者,還有很多細節性、語法性問題,如最典型的有括號配對問題、分號使用問題、大小寫字母問題等。Microsoft Visual C++ 6.0要求所有的字符必須在英文輸入法狀態下輸入才合法,且區分大小寫字母。很多初學者一方面是對于規則不熟悉,一方面是沒有嚴格按照要求操作并且粗心大意,導致代碼編輯常常會出現以上類似問題。對于括號配對問題,只要養成良好的編程習慣,無論任何時刻,只要涉及括號的輸入,不論是大括號“{}”,還是圓括號“()”,首先一次性成對輸入即可,這樣就有效避免了括號配對問題。對于分號的使用,只要養成良好習慣,確保在英文輸入法下輸入即可。當然,由于C++嚴格區分大小寫字母,因此要求初學者必須認真熟記有關關鍵字,而對于自定義的標識符,一般只手動輸入一次,其它時候均可以使用復制形式完成,有效避免多次輸入導致的誤操作問題。
2 結語
C++是一門較為流行的程序設計語言,Microsoft Visual C++ 6.0是一個進行C++程序設計學習和開發好工具。在使用工具的過程中,我們要盡量熟悉開發工具的使用,注重掌握C++語言的基本知識和特點,同時養成良好的編程習慣,讓我們編寫的程序質量更高,提高學習和開發效率。
參考文獻
[1] 莊淼.計算機C++語言編輯程序中常見問題及編程技巧[J].信息技術與信息化,2019(10):59-62.
[2] 王曉輝,田祥宏.計算機公共基礎程序設計課程教學改革[J].電腦知識與技術,2011(12):98-100.