Tôi có chức năng void foo(...)
và hàm void bar(...)
và tôi muốn gọi thanh từ foo, theo cách mà bar
nhận cùng một danh sách đối số biến hơn foo
.Chuyển tiếp đối số biến trong các hàm trong D
Điều đó có thể thực hiện được trong D không?
Cảm ơn!
Đó là một mẹo hay mà tôi không biết. Thật không may, trong trường hợp của tôi, tôi không thể sử dụng các mẫu vì tôi cần ghi đè hàm đó trong một lớp con. Có lẽ tôi sẽ thay đổi thiết kế. –
@SantiagoV. Trong D, các hàm variadic dựa trên các mẫu. Tôi sẽ đi xa như nói rằng C phong cách chức năng variadic không thể tồn tại tự nhiên trong một ngôn ngữ gõ mạnh mẽ. Bạn luôn có thể quấn các tham số của bạn trong một bộ sưu tập không đồng nhất của một số loại, nhưng bạn sẽ phải đưa ra quyết định như thế nào để xử lý các đối số còn thiếu. Ngoài ra, hãy xem std.tuple để thực hiện thư viện chuẩn của D (vẫn sử dụng các mẫu). – Tim