FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS’ TEST ANALYZE WINDOW HELP rin} a > Local Windows Debugger ~ Auto - Debug ~ Win32 Solution Explorer a es 0-0 *# 2 tion Explorer Ctrl+: Pr
Trang 11.0 Viét chương trình đầu tiên
Thursday, September 21, 2017 6:58 PM
Ở các bài trước, chúng ta đã biết về quy trình làm việc để tạo ra một
chương trình C++, những công cụ cần thiết và IDE mà chúng ta sẽ sử
dụng để phát triển chương trình Đến đây chắc các bạn cũng đang háo
hức muốn bắt tay vào viết một cái gì đó Trong bài này, chúng ta sẽ cùng
viết một chương trình mà bất cứ lập trình viên C++ nào cũng từng trải
qua Một chương trình huyền thoại mang tên "”Hello World”
Để bắt đầu viết chương trình, chúng ta cùng mở TDE Visual studio 2015
lên và tạo một project Tại giao diện Start Page của Visual studio, các
bạn click chọn New ProJect
VIEW DEBUG TEAM TOOLS TEST ANALYZE WINDOW HELP
it ian ua Attach ~
FILE EDIT
Solution Explorer sa.“ ‹
Start New to Visual Studio? Check out coding tutorials and sample projects
Get training on new frameworks, languages, and technologies New Project Create a private code repo and backlog for your project
See how easy it is to get started with cloud services SEN HASSE: Discover ways to extend and customize the IDE Open from Source Control
Connect to Azure
Recent Learn more about Azure
ForestProtector
GLFW_Learning The Ball GLFW_BasicModel What's new on Microsoft Platforms RescuelnWarface LÊ Tnhh
& Microsoft Azure
V ASP,NET and Web
Ht Windows Phone
Relocate the What's New information
project la HelloWorld Sau đó, ở phần location cac ban co thé chon
đường dẫn thư mục để lưu project nay vao.
Trang 2> Recent .NET Framework 4.5 * Sort by: Default
| | Blank App (Universal Apps) Visual C++ Type: Visual C++
Ths
> Store Apps
aus Win32 Console Application Visual C++
en
erate) Pivot App (Windows Phone) Visual C++
MFC
Win32
> Other Project Types
J0
Empty Project Visual C++
| Name: HelloWorld| ;
Location: c:\users\dad.intern\documents\visual studio 2013\Projects x Solution name: HelloWorld \¥| Create directory for solution
| | Add to source control
Nhấn chọn OK dé hoan tat viéc tao project mdi Ngay khi Visual studio thiết lập project bạn vừa tạo Bạn có thể nhìn vào cửa số Solution Explorer (mặc định là bên trái) để xem cấu trúc tổ chức của một project như thế nào
FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS’ TEST ANALYZE WINDOW HELP
rin} a > Local Windows Debugger ~ Auto - Debug ~ Win32
Solution Explorer a es
0-0 *#
2 tion Explorer (Ctrl+: Pr
MMe) Mi etela (le) elt MO ce) (a)
4 +, HelloWorld w= External Dependencies Lael Files Lael get a elle
Project HelloWorld được Visual studio tổ chức dưới dạng cây thư mục để quan lý mã nguôn và tài nguyên
Trong project HelloWorld, hiện tại chúng ta quan tâm đến 2 phần chính:
¢ Header Files: dung dé chufa cac phan khai bao class, khai bao ham hoặc phần khai báo một số hằng số được sử dụng cho chương trình
Các file được chứa trong phần Header thường có phần đuôi mở rộng
là h, hpp
Trang 3e Source Files: là nơi chứa các file định nghĩa các hàm, các class Các file được đặt trong này thường có dạng cpp
Bây giờ chúng ta cùng tạo file chương trình đầu tiên Các bạn click chuột phải vào tên project ở trong khung Solution Explorer, chọn đến dòng Add và click chọn New Ttem
| HelloWorld - Microsoft V
FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS TEST ANALYZE WINDOW HELP
© - in ~ & Ed > Local Windows Debugger + Auto S Debug
đ địa #
sarch Solution Explorer (Ctrl+ Ð-
Peo =10 7) (0)
oe Rebuild
Lloro:
Lares) View Clean
LL lice
Analyze Project Only Scope to This New Solution Explorer View Profile Guided Optimization Build Dependencies Add ‘OO Newltem Ctrl+ Shift+A
° Class Wizard Ctrl+Shift+X ‘O_~Existing Item Shift+Alt+A
Manage NuGet Packages %5 NewEFilter Set as StartUp Project sa ae Debug Class
db Cut Ctrl+X
Remove
He 4 Ja] aa
Unload Project Rescan Solution Output Open Folder in File Explorer
Trong cửa số Add New Ttem, các bạn chọn loại file cần thêm là C++ File (.cpp), đặt tên file ở textbox Name phía bên dưới Để tạo một thói quen tốt, file này các bạn đặt tên là main.cpp sau đó click Add
Trang 44 Installed Sort by: Default "HE Search Installed Templates (Ctri+E Pr
Creates a file containing C++ source code
HLSL [hi] Header File (.h) Visual C++
Data Resource Web Utility
Property Sheets
Test
Graphics
PowerShell
> Online
Name: main.cpp|
Sau khi add file main.cpp xong, cùng nhìn lại phần tổ chức project trong cửa số Solution Explorer xem điều gi dang xảy ra
Search Solution Explorer (Ctrl+; pP-
ig Solution ‘'HelloWorld' (1 project) Fate ste) ele
w= External Dependencies
sq Header Files
™j Resource Files
4 rJ] Source Files
++ main.cpp
Chúng ta đã có thêm 1 file duoc dat san trong phan Source Files Mot file
có đuôi mở rộng là cpp luôn được đặt trong phần này Phía bên phải là phần soạn thảo mã nguồn cho file main.cpp đã được mở sẵn Như đã nói
ở trên, file đầu tiên cần tạo cho project nên đặt tên là main.cpp để tạo một thói quen tốt, chắc các bạn sẽ thắc mắc và đặt câu hỏi tại sao?
Trước hết, chúng ta cùng viết một ít mã lệnh cho HelloWorld program
Trang 5FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS TEST ANALYZE WINDOW HELP
©- II i is >» Local Windows Debugger ~ Auto Debug
Solution Explorer v 1x
4 ồ~x # đi © '' Fel HelloWorld - (Global Scope)
fg Solution 'HelloWorld' (1 project) 38 #include
Fe elie : using namespace std;
b #& External Dependencies =
Sj Header Files
m™ Resource Files
7 eee ce |
b ++ main.cpp
Nhấn tổ hợp phím Ctrl + S dé lưu lại những gì bạn đã viết Ở mức độ hiện
tại, mình chỉ yêu cầu các bạn viết theo những gì mình đã viết, chưa yêu
cầu các bạn phải hiểu được những dòng mã trên có ý nghĩa gì Sau khi lưu
file main.cpp lại, chúng ta đã có được file mã nguồn C++ đầu tiên Các
bạn có thể muốn xem thử file main.cpp vừa được lưu đang nằm chổ nào
Để xem thư mục gốc của project, các bạn click chuột phải vào tên project
HelloWorld trong cửa số Solution Explorer rồi chọn Open Folder in File
Explorer
` ae
ze | = 6 + ye) `2
;
a Solution Ln Pa
eco Rebuild
Heade Clean
Resou ;
Tony Sourc
Anal ++ mi Sys
Project Only Scope to This New Solution Explorer View Profile Guided Optimization Build Dependencies Add
* Class Wizard Ctrl+Shift+X Manage NuGet Packages
Set as StartUp Project Debug
Source Control en)
Remove 4: Rename
Unload Project Rescan Solution Open Folder in File Explorer
Trang 6Và chúng ta thay file main.cpp nhu trong hinh bên dưới
a > ThisPC » Documents > visual studio 2013 » Projects >» HelloWorld » HelloWorld
Name ° Date modified Type Size
(%] HelloWorld.vexproj 4/13/2016 10:53 PM VC++ Project 4KB
ns S1 HelloWorld.vcxproj.filters 4/13/2016 10:53 PM VC++ Project Filte 1 KB
! ; lat main.cpp 4/13/2016 10:56 PM CDPP File 1 KB studio 2013
ItectureExplorer
Quay lại với màn hình làm việc của Visual studio Các bạn click chuột vào
menu item BUILD trén Tool bar, sau do chon Build Solution (hoac nhan
phím F7)
FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS’ TEST ANALYZE WINDOW HELP
fÐ ~ t⁄J Build Solution F7 : Debug ~ Win32
Rebuild Solution Ctrl+Alt+F7 Solution Explorer v
= # Clean Solution AE Y3 - œ BI] ï : - obal Scope)
eee le) Run Code Analysis on Solution Alt+F11
Rebuild HelloWorld Clean HelloWorld
¡31 Solution 'HelloWorld' (1 projec
4 + HelloWorld
w= External Dependencies
s8 Header Files Project Only
SG neo Profile Guided Optimization
=Sl Source Files
main.cpp
Configuration Manager
TlÌ: Compile Ctrl+F7
Le
tạo thành file object ob]j, đồng thời liên kết file main.obj tạo thành file
chương trình (có đuôi exe) Chúng ta chuyển qua thư mục gốc của
project chứa file main.cpp lúc nay, double click vao thu muc Debug,
chung ta thay file main.obj la két qua cua qua trinh biên dịch mã nguồn
, J¿ > ThisPC » Documents > visual studio 2013 » Projects HelloWorld » HelloWorld » Debug
~
4/13/2016 10:54PM Text Document 2 KB
'
studio 2013 key vC120.idb ° 4/13/2016 10:54PM ¬ VC++ Minimum R ee 5 251 KB :
up Files
: Snippets
Quay lui thư mục chứa file main.cpp ban đầu, cùng chuyển lui một thư
mục ngoài nữa Chúng ta lại thấy một thư mục có tên là Debug khác
Trang 7+ Ji > ThisPC » Documents > visual studio 2013 >» Projects » HelloWorld
-
“^
Name Date modified Type Size
N L1 HelloWorld.sdf 4/13/2016 11:06 PM SOL Server Comp 448 KB
J
64 HelloWorld.sin 4/13/2016 10:04PM = Microsoft Visual S 1 KB
| Studio 2013
hitectureExplorer
:kup Files
de Snippets
Vào trong thư mục Debug này, các bạn sẽ thấy file exe đã được Visual
studio tạo ra
ry) > ThisPC » Documents > visual studio 2013 >» Projects » HelloWorld » Debug
T1 HelloWorld.ilk 4/13/2016 10:54PM Incremental Linke 389 KB
ts
e:\ HelloWorld.pdb 4/13/2016 10:54PM Program Debug D 940 KB tudio 2013
ectureExplorer
Bây giờ, các bạn mở file HelloWorld.exe này bằng cách double click vào
nó Cùng xem kết quả xuất hiện trên màn hình
| [od =| Application Tools Debug 1N Home Share View Manage
de Cut | Ì | he yA EI! = New item * m7]ÌOpen x RHselectall
Copy Move Copy Delete Rename New Properties
lllllll till
lứt History oo Invert selection
oS v T ry
a Visual Studio
a Architectu
a Backup File
” Code Snipr
di Projects
Như các bạn thấy, trong cửa số Console, chúng ta có một dòng chữ xuất
hién: "Hello World.", va một dòng gợi ý cho người dùng rằng: Hãy nhấn 1
phím bất kì để kết thúc chương trình
Ngoài cách chạy trực tiếp file HelloWorld.exe trong thư mục Debug, các
bạn còn có thể chạy chương trinh ngay trên màn hình làm việc của Visual
Trang 8studio, bằng cách click chuột phải vào tên project trong cửa số Solution
Explorer -> Debug -> Start new instance
FILE EDIT VIEW PROJECT BUILD DEBUG TEAM TOOLS TEST ANALYZE WINDOW HELP
tae > Local Windows Debugger ~ Auto x Debug ~ Win32 Solution Explorer ~ 2 X = main.cpp
Search Solution Explorer (Ctrl+: pe
mR 1 an nu RY ; ñ-‹ í ta Buía
ae Rebuild
Le
To
b ++ Analyze < "Hello World." <<
View
Project Only
("pause"”) ;
Scope to This : New Solution Explorer View
Profile Guided Optimization Build Dependencies Add
Bs’ Class Wizard Ctrl+Shift+X Ñl_ Manage NuGet Packages
TF Set as StartUp Project Debug | Start new instance Source Control ó e Step Into new instance
3% Remove Del
Unload Project
Rescan Solution
Output C* Open Folder in File Fxplorer This item does n ah sah
HelloWorld.exe
=
a)
Process: [4076] HelloWorld.exe Solution Explorer » 2X ~ main.cpp
ta O-~2 i “'_ [%l HelloWorld s (Global Scope) x+ {@® main
=- Solution Explorer (Ct PP fg] Solution 'HelloWorld' (1 project)
4 {%| HelloWorld
Le car elle aes Calle —-
= Resource Files
F2 et —-
b ++ main.cpp
Class View Locals Threads Modules Watch 1 Breakpoints Output
ĐJ » V & i at @ ENG 12:14AM
Vậy là chúng ta đã viết xong chương trình đầu tiên của khóa học lập trình C++ Bây giờ mình muốn quay lại vấn đề mình đã nói ở trên, đó là tại sao
Trang 9chúng ta lại nên đặt tên file đầu tiên cho project là main.cpp?
Để giải thích vấn đề này, mình muốn các bạn nhìn lại mã nguồn của file
main.cpp mà các bạn đã viết cùng mình để có cái nhìn tổng quan về cấu
trúc của một chương trình C++ cơ bản
using namespace std;
6 Elint main()
int main()
Đó là dòng bắt buộc phải có nếu muốn mã nguồn C++ có thể hoạt động
được Main trong tiếng Anh khi dịch ra có nghĩa là chính, quan trọng
Trong ngôn ngữ C++, main là điểm khởi đầu cho một chương trình Trong
một thời điểm, máy tính của chúng ta chỉ có thể thực hiện 1 dòng lệnh
Và ở thời điểm chương trình C++ bắt đầu chạy, nó sẽ tìm tới nơi có khai
báo là main để thực hiện mã lệnh ở trong đó
Mã lệnh mà chương trình thực hiện sẽ được đặt trong cặp ngoặc nhọn
{ và }
Vì thế, cấu trúc chương trình C++ mà bạn cần nhớ sẽ như bên dưới
Elint main()
Các bạn cần lưu ý, một chương trình C++ chỉ có duy nhất một hàm
main
Các bạn sẽ thay nhiều hàm main có cách khai báo khác nhau Nhưng với
việc
bạn là người mới bắt đầu học C++, mình khuyến nghị các bạn nên sử
dụng theo
cách trong hình trên
int main()
{
}
Trang 10Chương trình cua C++ sé thuc hiện từng dòng lệnh trong cặp ngoặc nhọn { } ở phía sau hàm main một cách có thứ tự từ trên xuống dưới
Một chương trình C++ bắt buộc phải có 1 hàm main, thế nên mình
khuyên các bạn nên đặt tên file đầu tiên trong chương trình main.cpp, và file này sẽ chứa mã nguồn C++ có hàm main ở trong đó, sau này các bạn làm việc với 1 dự án có nhiều file thì sẽ không bị nhầm lẫn
Ở bài học kế tiếp (trong chương tiếp theo), mình sẽ nói về cấu trúc của một chương trình C++ cơ bản Hẹn gặp lại các bạn trong bài học sau
Link Videos khóa học
https://www.udemy.com/c-co-ban-danh-cho-nquoi-moi-hoc-lap-
trinh/learn/v4/overview