7 điểm bởi opal58 2023-03-05 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Được chủ tịch ủy ban ISO C++ Herb Sutter đề xuất

I want to keep writing code in C++... just "nicer"

Đây là một dự án khám phá xem có thể tạo ra cú pháp (syntax) mới hoàn toàn tương thích với C++ hiện có để công cụ hóa theo cách ngắn gọn và an toàn hơn hay không.

Hoạt động trên các trình biên dịch lớn (MSVC, GCC, Clang) với C++20 trở lên

// Cppfront  
main: () -> int = {  
    vec: std::vector<std::string> = ("hello", "2022");  
    view: std::span = vec;  
  
    for view do :(inout str: _) = {  
        len := decorate(str);  
        println(str, len);  
    }  
}  
  
decorate: (inout thing: _) -> int = { /*...*/ }  
println: (x: _, len: _) = { /*...*/ }  
  
// Cpp  
[[nodiscard]] auto main() -> int{  
    std::vector<std::string> vec {"hello", "2022"};   
    std::span view {vec};   
  
    for ( auto&& cpp2_range = view;  auto& str : cpp2_range ) {  
        auto len {decorate(str)};   
        println(str, len);  
    }  
}  
  
[[nodiscard]] auto decorate(auto& thing) -> int { /*...*/ }  
auto println(auto const& x, auto const& len) -> void { /*...*/ }  

Chưa có bình luận nào.

Chưa có bình luận nào.