Tôi chỉ read ai đó gọi một lớp học với một constructor và một operator()
một vị:Sự khác biệt giữa một Người Dự Bị và Người Làm Việc là gì?
// Example
class Foo {
public:
Foo(Bar);
bool operator()(Baz);
private:
Bar bar;
};
Tuy nhiên, tôi đã không nghe lời vị đang được sử dụng trong bối cảnh này trước đó. Tôi sẽ gọi một thứ như vậy là functor. Đối với tôi, một vị từ sẽ là một cái gì đó từ tên miền của logic chính thức.
Điều này đặt ra câu hỏi sau:
- Đây có phải là một từ chung cho một cái gì đó giống như
Foo
? - Cả hai thuật ngữ được sử dụng thay thế cho nhau hay chúng có nghĩa là những thứ hơi khác nhau?
- Hoặc
- Liệu các kiểu trả về (
bool
so với cái gì khác) có cái gì để làm với nó? - Điều gì về số
operator()
làconst
?
- Liệu các kiểu trả về (
Rất đẹp. Theo nghĩa chung, một functor là * bất kỳ đối tượng/tạo tác nào đại diện cho một hàm * theo thiết kế. Cho dù nó làm như vậy cú pháp và/hoặc với 'operator()' là đường. –