cuốn sách gpt4 ai đã làm

Hàm mẫu biến đổi bí danh

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 23:34:33 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi có một hàm variadic như:

kiểm tra khoảng trống(int){}

mẫu
void test(int& sum,T v,Args... args)
{
tổng+=v;
kiểm tra (tổng, đối số ...);
}

Tôi muốn đặt cho nó một bí danh:

auto sum = test;//error: không thể suy ra auto từ test
int main()
{
int res=0;
kiểm tra (res, 4,7);
std::cout<<>
}

我尝试使用 std::liên kết Nhưng nó không hoạt động với các hàm biến đổi vì nó yêu cầu các phần giữ chỗ...

Có thể đặt bí danh cho các hàm biến đổi không?

câu trả lời hay nhất

Trong C++ 1y:

#include 

kiểm tra khoảng trống(int){}

mẫu
void test(int& sum,T v,Args... args)
{
tổng+=v;
kiểm tra (tổng, đối số ...);
}

mẫu
decltype(test)* sum = &(test);

int main(void)
{
int res = 0;
sum(res, 4, 7);
std::cout << res << std::endl;
}

Hoặc bọc nó trong một hàm biến đổi khác và std::chuyển tiếp Trong số các tham số:

mẫu
void other(int&sum, T v, Args&&... args)
{
test(sum, std::move(v), std::forward(args)...);
}

Về c++ - các hàm mẫu variadic bí danh, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/24330300/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress