Hướng dẫn add file header vào visual studio
Xin chào các bạn, bài viết hôm nay mình sẻ hướng dẫn các bạn cách tạo Copyright header trên file .cs trong Visual Studio. Show
[C#] Add copyright header visual studioDưới đây là hình ảnh mình đã thêm copyright thông tin của mình vào file C#. Bây giờ, mình sẽ hướng dẫn các bạn cách thêm Bước 1: Các bạn tạo mới cho mình một file .editorConfig, File này các bạn tạo theo template của mình như hình bên dưới. Và bây giờ bạn tìm đến dòng có chữ file_header_template và chúng ta sẽ thêm thông tin copyright của mình ở đây như hình bên dưới:
Các bạn xuống dòng bằng dấu "\n" nhé. Bây giờ, các bạn lưu lại là xong. Và bây giờ khi các bạn tạo mới file .cs nào thì thông tin copyright header này đều có xuất hiện. Còn ở class nào chưa có thêm thông tin, các bạn chọn ngay dòng đầu tiên và nhấn phím (Ctrl + .) => chọn Add header file như hình dưới đây. Vậy là xong! Chúc các bạn thành công. <3 THÔNG TIN TÁC GIẢNGUYỄN THẢOFounder at LaptrinhVB.net ★★★★★ ♥ Tình yêu thương chẳng hề hư mất bao giờ. (Cr 13,4) \========================================================================= My skills includes .NET(C#, VB.NET), DevExpress, Java, Android, PHP, Python, Sqlserver, Mysql, Reactjs, Dart, Flutter, API services and lot more... Phone/Zalo/Telegram/WhatsApp: ☎️ (+84)933.913122 Email: [email protected] My Github: https://github.com/nguyenthao1988 Facebook: https://fb.com/Lewandowski28031988 Youtube Channel: https://www.youtube.com/@thaomeotv Buy me a cup of beer \========================================================================= BÀI VIẾT LIÊN QUANĐăng bởi: Thảo Meo - Lượt xem: 4022 09:31:15, 08/12/2020C# In bài viết Tách code C++ thành các file.h và file.cpp? Chắc hẳn các bạn đã từng nghe qua. Trước tới giờ, chúng ta thường chỉ viết các đoạn code ngắn, hàm đơn giản hay chỉ là một chương trình nhỏ nên chỉ cần viết 1 file.cpp là đủ. Nhưng khi xây dựng một chương trình lớn thì có nên làm như vậy? Nếu bạn đọc đang có nhu cầu học lập trình hướng đối tượng C++, hãy tham khảo ngay series Lập trình hướng đối tượng với C++ của LTKK nhé. Tại sao phải tách file?Khi lưu toàn bộ code vào một file main sẽ gây ra rất nhiều vấn đề bất lợi, có thể kể đến như: Chương trình trở nên quá dài; khó quản lý, sử dụng. Giả sử ta khi muốn tìm một hàm nào đấy để chỉnh sửa thì sẽ làm tiêu tốn thời gian vì có quá nhiều hàm và không biết nó ở đâu. Việc tách code C++ cũng như tách code ở các ngôn ngữ khác sẽ giúp:
Hãy cùng xem xét ví dụ sau: File: main.cpp include
include
include using namespace std; // Các hàm tính toán - Math int UCLN(int a, int b){ }
int BCNN(int a, int b){ }
bool laSoNguyenTo(int n){ }
// Các hàm về chuỗi - string
string inHoa(string xau){ }
string inThuong(string xau){ }
int main(){ }Có thể thấy: Chương trình được viết vào một file main.cpp duy nhất. Và các hàm (function) của mình có 2 loại. “Loại 1: Các hàm về tính toán” và “Loại 2: Các hàm về xâu chuỗi”. Mình sẽ tách chương trình trên thành các file sau:
Lưu ý:
Mã code các fileMột chút về file Header (.h): Bạn có thể tưởng tượng đây là một file thư viện mà mình tự viết ra. Nó chứa các khai báo hàm, định nghĩa marco và có thể chia sẽ sang các file khác. (Trong các trình biên dịch sẽ có các thư viện – file Header được nhà sản xuất viết sẵn như string.h, time.h, math.h, …) Note: Mỗi file .h đều phải có dòng code “ pragma once” ở đầu.a) File: Header.hĐối với mình, đây sẽ là file include các thư viện mà tất cả các file khác đều phải có. Phổ biến nhất là File: Header.h pragma onceinclude using namespace std; b) File: Math_Fn.h và Math_Fn.cppFile: Math_Fn.h pragma onceinclude "Header.h"include // Các hàm về tính toán - Math int UCLN(int a, int b); int BCNN(int a, int b); bool laSoNguyenTo(int n); Mình đã include file Header.h nên trong file này sẽ có luôn thư viện File: Math_Fn.cpp include "Math_Fn.h"int UCLN(int a, int b) { }
int BCNN(int a, int b) { }
bool laSoNguyenTo(int n) { }Ở file .cpp, mình chỉ cần include file “Math_Fn.h” và viết các hàm đã khai báo trước đó. c) File: String_Fn.h và String_Fn.cppHoàn toàn tương tự với Math_Fn. Đây sẽ là file lưu các hàm về xâu, chuỗi. File: String_Fn.h pragma onceinclude "Header.h"include // Các hàm về chuỗi - string string inHoa(string xau); string inThuong(string xau); File: String_Fn.cpp include "String_Fn.h"// Các hàm về chuỗi - string string inHoa(string xau) { }
string inThuong(string xau) { }d) File: main.cppInclude tất cả các file .h (header) đã viết vào, rồi viết hàm main. File: main.cpp // include các file header đã viết vào include "Header.h"include "Math_Fn.h"include "String_Fn.h"int main() { }9 LAP TRINH KHONG KHO Tách code C++ trong Visual StudioHiện nay Visual Studio đang có rất nhiều phiên bản như 2012, 2017, 2019. Trong bài này mình sẽ sử dụng phiên bản mới nhất hiện tại – Visual Studio 2022. Việc tách file sẽ không có sự khác biệt giữa các phiên bản nên các bạn đừng lo lắng nhé! Hướng dẫn dưới đây sẽ chỉ bạn từng bước cách tách code C++ trên Visual Studio. B1: Tạo một project mới (Create a new project) rồi chọn Empty Project C++ B2: Các bạn để ý ở góc phải – Solution Expoerer sẽ có:
B3: Click chuột phải vào folder muốn thêm file => Chọn Add => New Item… B4: Chọn file phù hợp
Và đây là kết quả: Nội dung từng file thì mình đã đề cập ở phần 3 Tách code C++ trong Visual Studio CodeĐây là một editor do Microsoft phát triển dưới dạng mã nguồn mở (opensourse) khá xịn xò được rất nhiều lập trình viên yêu thích. Hiện tại VS Code là Editor được sử dụng phổ biến nhất. Hãy đảm bảo bạn đã cài đặt “Code Runner” và đã chạy được bằng Terminal ngay trên Visual Studio Code nhé! Hướng dẫn dưới đây sẽ chỉ bạn từng bước cách tách code C++ trên Visual Studio Code. Tham khảo thêm: Hướng dẫn cài đặt VS Code học C++ Bước 1: Tạo một folder và lưu toàn bộ các file vào trong đó – bao gồm cả file .h và file .cpp Bước 2: Vào Settings => Tìm kiếm “run code” Bước 3: Ở Extension => Chọn Run Code con… (23) => Tìm kiếm Code-runner: Executor Map => Chọn Edit in settings.json Bước 4: Ở mục cpp: Các bạn sửa $fileName thành *.cpp Bước 5: Lưu lại và quay trở lại file main.cpp để chạy code. Khi bạn đã làm qua một lần rồi thì lần tiếp theo chỉ cần làm 2 bước: B1 và B5 thôi nhé !!! Và đây là kết quả: Câu hỏi thường gặp (FAQ)Dưới đây là các câu hỏi thường gặp liên quan tới vấn đề tách code C++ thành file .h và .cpp do mình tổng hợp. Việc đổi tên thành *.cpp sẽ thay đổi những gì?Hãy để ý ở Visual Studio, tất cả các file (.h và .cpp) sẽ đều được lưu chung vào trong một folder. Việc đổi từ $fileName sang *.cpp cũng tương tự vậy. Tức là toàn bộ các file trong cùng một project phải lưu cùng một folder thì mới chạy được trên Visual Studio Code. Nói cách khác, các file không liên quan với nhau mà để chung một folder thì khi chạy sẽ lỗi. Khi mới bắt đầu nên tách file như thế nào?Ở phía trên, mình đưa ra một ví dụ khá tổng quát. Tuy nhiên, khi mới bắt đầu tập tành tách file thì các bạn chỉ nên tách file thành 2 file:
Rồi sau đó các bạn hãy từ từ nâng số file lên – 3 file, 4 file và cuối cùng là tách file theo chức năng từng file để dễ quản lí, sử dụng nhé. Tại sao phải khai báo hàm?Giả sử bạn có hai hàm: function1 và fuction2. Khi ở trong function2 thì bạn có thể sử dụng function1 nếu muốn. Nhưng khi ở fuction1 thì bạn không thể dùng function2. Bởi vì trình biên dịch sẽ chạy từ trên xuống dưới, khi chưa chạy xong function1 thì function2 không tồn tại để sử dụng. Việc khai báo hàm sẽ giúp chúng ta khắc phục điều đó. Các bạn có thể sử dụng các hàm một cách thoải mái mà không cần lo lắng đến thứ tự. Viết hàm trong file header (.h) luôn được không?Được, nhưng không nên. Vốn dĩ file .h sinh ra là để khai báo (thư viện, using name, class, struct, hàm – function,…). Còn việc lưu code thuộc về các source file .cpp. Do đó khi các bạn viết hàm trong file .h luôn thì thỉnh thoảng chương trình sẽ chạy sai hoặc không chạy được. Tại sao phải có “pragma once” ở đầu file.h?Khi bạn include một file header (.h) thì tức là bạn đã include “toàn bộ những gì mà file header đó include”. Hãy nhìn hình dưới đây: Như vậy ở file main.cpp, ta đã include iostream 2 lần. Điều này sẽ gây ra xung đột và có thể khiến chương trình không thể chạy được. Và thêm “ pragma once” ở đầu giúp chúng ta khắc phục điều đó, nó mang ý nghĩa include thư viện một lần, tránh sự trùng lặp.Bản MinGW mà mình đang dùng?MinGW là một phần mềm mã nguồn mở, một trình biên dịch ngôn ngữ C/C++ rất phổ biến trên Windows. Đối với Visual Studio thì có sẵn trình biên dịch nhưng các editor như VSCode, sublime text,… thì không. Do đó bạn phải cài thêm mới chạy code được. Hiện tại mình đang sử dụng phiên bản MinGW mới nhất 9.2.0. Các bạn có thể download tại MinGW và cách cài đặt MinGW tại Hướng dẫn cài đặt MinGW. Lời cảm ơnCảm ơn các bạn đã đọc bài viết hướng dẫn tách code C++ của mình, nếu thấy hay thì hãy chia sẽ để ủng hộ LTKK nhé! Và nếu bạn có câu hỏi hay thắc mắc gì thì hãy để lại bình luận nhé, hoặc có thể đưa lên group Lập Trình Không Khó để mọi người cùng thảo luận. Mình sẽ cố gắng update câu trả lời sớm nhất có thể. |