Làm việc với mã nguồn bên dưới (đó là mã nguồn mở) và tôi chưa bao giờ thấy dấu ngoặc đơn sau tên biến. UDefEnergyH chắc chắn là một biến có thể được nhìn thấy trong dòng 1. Bất cứ ai có thể cho tôi biết những gì các dấu ngoặc đơn đang làm gì? Không thực sự biết làm thế nào để Google này. Cảm ơn.Dấu ngoặc đơn sau tên biến C++
bins[0] = UDefEnergyH.GetLowEdgeEnergy(size_t(0));
vals[0] = UDefEnergyH(size_t(0)); //Don't know what this does???
sum = vals[0];
for (ii = 1; ii < maxbin; ii++) {
bins[ii] = UDefEnergyH.GetLowEdgeEnergy(size_t(ii));
vals[ii] = UDefEnergyH(size_t(ii)) + vals[ii - 1];
sum = sum + UDefEnergyH(size_t(ii));
}
Và nó được khai báo ở đây trong file header:
G4PhysicsOrderedFreeVector UDefEnergyH;
điều hành quá tải –
Trên thực tế không có bối cảnh thêm chúng tôi có thể không có khả năng trả lời câu hỏi này. Những gì @MohitJain đề xuất chắc chắn là một lời giải thích có thể là –
'UDefEnergyH' là một thể hiện của một đối tượng. 'UDefEnergyH (0)' gọi toán tử gọi hàm quá tải 'UDefEnergyH :: operator() (std :: size_t i)'. – tmlen