Đi đến nội dung
Lỗi trình biên dịch RustLỗi
E0015

E0015 — Lời gọi hàm trong hằng số bị giới hạn

Một hàm không phải const được gọi trong ngữ cảnh biểu thức hằng số.

rustcargo

Nguyên nhân gây ra lỗi này

Bạn đang gọi một hàm trong ngữ cảnh const hoặc static mà hàm đó chưa được đánh dấu là const fn. Chỉ hàm const fn mới có thể được tính toán tại compile time.

Cách sửa

Đánh dấu hàm là const fn nếu có thể. Chuyển phép tính sang runtime (dùng lazy_static! hoặc once_cell). Dùng giá trị literal thay vì lời gọi hàm trong ngữ cảnh const.

Tài liệu chính thức

Mã lỗi liên quan