sự khác biệt giữa hai tờ khai sau là gì:tờ khai nhập nhằng
1. int foo(int);
2. int foo(int());
Tôi không chắc chắn nếu cả hai tờ khai là tương đương. Điều gì làm cho (2)
khác với (1)
?
sự khác biệt giữa hai tờ khai sau là gì:tờ khai nhập nhằng
1. int foo(int);
2. int foo(int());
Tôi không chắc chắn nếu cả hai tờ khai là tương đương. Điều gì làm cho (2)
khác với (1)
?
int foo(int);
là tuyên bố của một hàm lấy một số nguyên như là một đối số và trả về một số nguyên cũng
int foo(int());
tuyên bố một chức năng dùng như một cuộc tranh cãi "một con trỏ tới một hàm trả về int
và lấy {không có đối số [trong C++] và số lượng đối số không xác định [trong C]} "và trả về một số nguyên.
(2)
tương đương với int foo(int (*pf)())
và int foo(int f())
Lấy không có đối số? Tôi tin rằng bạn có nghĩa là tham gia không xác định nhưng không phải là đối số variadic. '(void)' là cách để xác định "không có đối số". –
@R Tôi tin rằng đó là C chỉ, không C++ – Tom
@R: Xin lỗi tôi đã bỏ lỡ điều đó. Đã thêm vào bài đăng của tôi. –
Check-out http: //cdecl.org ... này sẽ rất hữu ích ... – liaK