Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Solution to functions that tries modifying immutable arguments passed by reference

Đang mở
#167 5 bình luận 0 reaction 0 người được giao Xem trên GitHub

@GabrielJMS đang làm issue này rồi.

Từ ngày 17/6/2026.

  • #203 của @GabrielJMS — đang mở

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
cpp, python
Lĩnh vực
api

Hướng nghiên cứu

Bắt đầu với BRep_Tool::CurveOnSurface và xem lại pybind11 FAQ được liên kết cùng các ghi chú dành cho nhà phát triển pyOCCT về các đối số tham chiếu. Xác định phạm vi cần thiết ở cấp binding để cung cấp các tham số đầu và cuối đã được sửa đổi của đường cong, sau đó xác minh rằng các bên gọi có thể lấy lại các giá trị đó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Hello,

Have you found any solution for handling functions that return values via output parameters passed by reference, especially when those parameters are of immutable types?

This becomes a problem with important functions like BRep_Tool::CurveOnSurface. In such cases, the function modifies the arguments passed by reference (e.g., to return the first and last parameters of the Geom2d_Curve), but when these are immutable types in the binding language, we can’t retrieve the modified values.

This effectively blocks access to important return data.

Some relevant references:

pybind11 FAQ – Limitations involving reference arguments

pyOCCT developer notes – Reference arguments

Would appreciate any guidance or workarounds!

Thanks in advance.

Ngôn ngữ chính
C++
Star
203
Fork
50
Merge trung bình
3 ngày 4 giờ
Pull request đã merge (30 ngày)
1

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CadQuery/OCP

Tất cả issue của CadQuery/OCP

Issue tương tự

Thêm issue về C++

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.