About Visual C++
快速摘要:Visual C++(MSVC)是微軟提供的 C++ 編譯器與工具鏈,隨 Visual Studio 演進。最新版本(Visual Studio 2022 / MSVC 19.39)全面支援 C++20 與 C++23 的大部分特性,並透過 CMake 與 vcpkg 提供跨平台開發能力。MSVC 在 Windows 上整合度最佳,但與 GCC、Clang 相比,跨平台靈活度略低。
include <concepts>
include <iostream>
template <std::integral T>
T add(T a, T b) { return a + b; }
int main() {
std::cout << add(3, 5) << "\n"; // OK
// std::cout << add(3.2, 5.1); // 編譯錯誤
}
cl /std:c++20 main.cpp
---
🌍 跨平台支援與配置範例
- CMake 整合:Visual Studio 2022 原生支援 CMake。
範例 CMakeLists.txt:
```cmake
cmakeminimumrequired(VERSION 3.20)
project(HelloCXX)
add_executable(hello main.cpp)
在 Visual Studio 開啟資料夾即可直接編譯。
vcpkg install boost
⚖️ MSVC 與其他編譯器比較| 編譯器 | 優勢 | 劣勢 |
|---|---|---|
| MSVC (Visual C++) | Windows 整合最佳、IDE 支援、診斷工具強大 | 跨平台彈性較低 |
| GCC | Linux/Unix 主流、跨平台廣泛 | Windows 整合度差 |
| Clang/LLVM | 錯誤訊息清晰、跨平台佳、支援最新標準快 | Windows 整合度不如 MSVC |
👉 總結:Visual C++ 最新版本在 Windows 上是最完整的 C++ 開發環境,支援最新標準並提供跨平台工具鏈,但若專案主要針對 Linux/macOS,Clang/GCC 仍更靈活。
| File13 | File | Last Modified |
|---|---|---|
| 模組化開發-用 CMake + Conan 封裝並重用 C++ 函式庫 | 模組化開發-用 CMake + Conan 封裝並重用 C++ 函式庫 | 8:20 PM - December 06, 2025 |
| 模組化開發-C++的模組化開發架構 | 模組化開發-C++的模組化開發架構 | 8:20 PM - December 06, 2025 |
| 推薦網站 | 推薦網站 | 8:20 PM - December 06, 2025 |
| MISRA C++類似針對某應用規範的標準 | MISRA C++類似針對某應用規範的標準 | 8:20 PM - December 06, 2025 |
| MISRA C++ | MISRA C++ | 8:20 PM - December 06, 2025 |
| Design Pattern | Design Pattern | 8:20 PM - December 06, 2025 |
| CPP | CPP | 8:20 PM - December 06, 2025 |
| C++的演進與比較 | C++的演進與比較 | 8:20 PM - December 06, 2025 |
| C++23 | C++23 | 8:20 PM - December 06, 2025 |
| C++20 | C++20 | 8:20 PM - December 06, 2025 |
| C++17 | C++17 | 8:20 PM - December 06, 2025 |
| C++14 | C++14 | 8:20 PM - December 06, 2025 |
| C++11 | C++11 | 8:20 PM - December 06, 2025 |