này cảm thấy như là một điều thực sự ngu ngốc để hỏi, nhưng tôi đã có người tham gia một lớp lập trình hỏi tôi đối với một số giúp đỡ về chuyển nhượng và tôi thấy điều này trong mã của họ (Chưa có cảm nhận về các ký hiệu Hungarian xin vui lòng):Trong một khai báo chức năng, những gì đi qua một mảng kích thước cố định biểu thị?
void read_dictionary(string ar_dictionary[25], int & dictionary_size) {...
Mà, chủ yếu là một lập trình viên C# (tôi đã học về C và C++ ở đại học) Tôi thậm chí không biết bạn có thể làm. Tôi đã luôn nói, và đã đọc vì bạn mà đang phải có
void read_dictionary(string ar_dictionary[], int ar_dictionary_size, int & dictionary_size) {...
Tôi nói rằng vị giáo sư cho họ này và rằng nó hoạt động, vì vậy những gì không khai báo một mảng kích thước cố định như thế thậm chí có ý nghĩa ? C++ không có cách nào để biết kích thước của một mảng được truyền cho nó (ngay cả khi tôi nghĩ rằng có thể đã được thay đổi trong thông số mới nhất)
Nó có cách tự nhiên để biết kích thước mảng : phương pháp này. Nếu bạn nói nó tuyệt vời như thế nào là mảng, nó sẽ tin rằng nó được. –
'25' trong khai báo tham số bị bỏ qua bởi trình biên dịch. Nó giống như 'string ar_dictionary []'. –
@ H2CO3 Không có chức năng nào có thể làm với con số đó, cũng như bất kỳ cách nào để trình biên dịch kiểm tra xem cái gì đang được truyền cho nó có phải là kích thước không ... – cost