【C++】Visual Studio教程(三) - 项目和解决方案
00. 目錄
文章目錄
- 00. 目錄
- 01. 概述
- 02. 創建解決方案
- 03. 添加項目
- 04. 向項目添加一個項
- 05. 添加第二個項目
- 06. 添加項目引用
- 07. 添加測試代碼
- 08. 項目屬性
- 09. 附錄
01. 概述
解決方案是一個容器,用于組織一個或多個相關的代碼項目,例如,一個類庫項目和一個對應的測試項目。 我們會介紹項目的屬性和其中包含的一些文件。 此外,我們還會在一個項目中創建對另一項目的引用。
盡管其名稱如此,但解決方案并不是“答案”。 解決方案僅僅是 Visual Studio 用來組織一個或多個相關項目的容器。 在 Visual Studio 中打開解決方案時,它會自動加載其中包含的所有項目。
02. 創建解決方案
我們先創建一個空的解決方案。 對 Visual Studio 有一定了解后,可能就不會經常創建空的解決方案。 在 Visual Studio 中創建新項目時,如果沒有打開的解決方案,它會自動創建一個解決方案來存放項目。
打開 Visual Studio。
在“開始”窗口中,選擇“創建新項目”。
在“創建新項目”頁上,在搜索框中輸入“空白解決方案”,選擇“空白解決方案”模板,然后選擇“下一步” 。
將解決方案命名為“QuickSolution”,然后選擇“創建” 。
解決方案將顯示在 Visual Studio 窗口右側的解決方案資源管理器中 。 你可能會經常使用“解決方案資源管理器”來瀏覽項目的內容 。
溫馨提示
如果你安裝了多個工作負載,那么“空白解決方案”模板可能不會出現在搜索結果列表的頂部。 嘗試滾動到列表的“基于你搜索的其他結果”部分。 它應該出現在那里。
03. 添加項目
現在我們將第一個項目添加到解決方案。 先從空項目開始,將所需項添加到項目中。
在“解決方案資源管理器”中的“解決方案 ‘QuickSolution’”的右鍵菜單或上下文菜單中,依次選擇“添加”>“新建項目” 。
隨即打開顯示“添加新項目”的對話框 。
在頂部的搜索框中輸入文本“空”,然后在“語言”下選擇“C#”。
然后選擇“空項目 (.NET Framework)”模板并選擇“下一步” 。
將項目命名為“QuickDate”,然后選擇“創建” 。
隨后名為“QuickDate”的項目出現在“解決方案資源管理器”中的解決方案下 。 目前它包含一個名為“App.config”的文件 。
備注
如果沒有看到“空項目(.NET Framework)”模板,則需要安裝 .NET 桌面開發 Visual Studio 工作負載 。 Visual Studio 使用基于工作負載的安裝旨在僅安裝所執行的開發類型需要的組件。
在創建新項目時安裝新工作負載的簡便方法是,在顯示“未找到你要查找的內容”的文本下選擇“安裝更多工具和功能”鏈接 。 在“Visual Studio 安裝程序”啟動后,選擇“.NET 桌面開發”工作負載,再單擊“修改”按鈕 。
04. 向項目添加一個項
我們有一個空項目。 我們來添加代碼文件。
在“解決方案資源管理器”中的“QuickDate”項目的右鍵菜單或上下文菜單中,依次選擇“添加” > “新建項” 。
此時將打開“添加新項”對話框。
展開“Visual C# 項”,然后選擇“代碼” 。 在中間窗格中,選擇“類”項模板。 將類命名為“Calendar”,然后選擇“添加”按鈕 。
名為“Calendar.cs”的文件已添加到項目。 末尾的 .cs 是 C# 代碼文件的文件擴展名。 文件出現在“解決方案資源管理器”中的可視項目層次結構中,其內容在編輯器中打開。
將 Calendar.cs 文件的內容替換為以下代碼:
你無需了解代碼的作用,但是如果你想知道,可通過按 Ctrl+F5 來運行該程序,即可看到程序將今天的日期打印到控制臺(或標準輸出)窗口 。
05. 添加第二個項目
包含多個項目的解決方案很常見,而且這些項目通常相互引用。 解決方案中的一些項目可能是類庫,可能是可執行應用程序,也可能是單元測試項目或網站。
我們來向解決方案添加單元測試項目。 這次我們從項目模板開始,所以不需要向項目添加額外的代碼文件。
在“解決方案資源管理器”中的“解決方案 ‘QuickSolution’”的右鍵菜單或上下文菜單中,依次選擇“添加” > “新建項目” 。
在“添加新項目”對話框中,在頂部的搜索框輸入文本“單元測試”,然后在“語言”下選擇“C#”。
選擇“MSTest 測試項目(.NET Core)”項目模板,然后選擇“下一步” 。
將項目命名為“QuickTest”,然后選擇“創建” 。
第二個項目已添加到“解決方案資源管理器”,且編輯器中打開了名為 UnitTest1.cs 的文件。
06. 添加項目引用
我們將使用新的單元測試項目測試“QuickDate”項目中的方法,因此需要添加對該項目的引用。 創建引用會在兩個項目間創建生成依賴關系,這意味著生成解決方案時,會先生成“QuickDate”,再生成“QuickTest”。
選擇“QuickTest”項目中的“依賴關系”節點,然后在右鍵菜單或上下文菜單中選擇“添加項目引用…” 。
打開“引用管理器”對話框。
在左側窗格中,展開“項目”,然后選擇“解決方案” 。 在中間窗格中,選擇“QuickDate”旁的復選框,然后選擇“確定” 。
已添加對“QuickDate”項目的引用。
07. 添加測試代碼
現在我們向 C# 測試代碼文件添加測試代碼。 將 UnitTest1.cs 的內容替換為以下代碼:
using System; using Microsoft.VisualStudio.TestTools.UnitTesting;namespace QuickTest {[TestClass]public class UnitTest1{[TestMethod]public void TestGetCurrentDate(){Assert.AreEqual(DateTime.Now.Date, QuickDate.Calendar.GetCurrentDate());}} }你會看到某些代碼下出現紅色波浪線。 將測試項目設為“QuickDate”項目的友元程序集來解決此錯誤。
返回 QuickDate 項目,打開 Calendar.cs 文件(如果它尚未打開)。 將以下 using 語句和 InternalsVisibleToAttribute 屬性添加到文件頂部以解決測試項目中的錯誤。
代碼文件應如下所示:
08. 項目屬性
包含 InternalsVisibleToAttribute 屬性的 Calendar.cs 文件中的行引用了“QuickTest”項目的程序集名稱(文件名)。 程序集名稱可能不會始終與項目名稱相同。 若要查看項目的程序集名稱,請打開項目屬性。
在“解決方案資源管理器”中,選擇“QuickTest”項目。 在右鍵菜單或上下文菜單中,選擇“屬性”,或只按 Alt+Enter 即可。
項目的“屬性頁”隨即在“應用程序”選項卡上打開。屬性頁包含項目的各種設置。 請注意,“QuickTest”項目的程序集名稱確實為“QuickTest”。 如果想要更改,可在此處更改。 隨后,在生成測試項目時,生成的二進制文件的名稱將從“QuickTest.dll”更改為所選擇的名稱。
了解項目屬性頁的其他選項卡,例如“生成”和“調試”。 這些選項卡對不同類型的項目是不同的。
09. 附錄
總結
以上是生活随笔為你收集整理的【C++】Visual Studio教程(三) - 项目和解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C++】Visual Studio教程
- 下一篇: 【C++】Visual Studio教程