Hỏi về các cách truyền tham số

Hi mn !
mn giải thích giúp mình 3 cách truyền này với ạ
thanks all!!

xin lỗi em

đốt sách đi em :V :v: :V

chờ người khác vào chỉ…

6 Likes

C++ không có call by name bạn :smiley: mà dịch hãi quá, tham trị & tham biến chứ.

5 Likes

ko biết thì nhờ chứ làm gì căng bác

đây đề thi chứ ko phải sách , bạn cho mình xin link quyển sách nói về cái này được ko ?

Trị-kết quả ?
Tham khảo ?
Tên ?
Cũng muốn giúp bác nhưng tôi chả hiểu cái đề đang nói về cái gì. "truyền tham khảo vào hàm??? " :grin: em xin quỳ.

1 Like

Có lẽ người dịch chưa biết tiếng Anh nên “nhờ” Google Dịch ấy mà!

4 Likes

Chính xác là dịch sai nhé!

Pass-by-value: tham trị
Pass-by-reference: tham chiếu

Vầng, reference Google dịch thành tham khảo.

Theo mình tìm kiếm với 2 từ khóa truyền bằng trị-kết quảtruyền bằng tham khảo thì ra các kết quả:

  1. Các bài viết về tham trịtham chiếu.
  2. Các bài viết chẳng liên qua đến lập trình.

truyền bằng tên thì như @rogp10 nhắc đến call-by-name thì trong C++ không hề có, chỉ có trong 1 vài ngôn ngữ như Scala thôi.

3 Likes

gửi bạn link các cách truyền tham số :slight_smile:

1 Like

Hmm.

These techniques are older and were used in earlier programming languages like Pascal, Algol and Fortran. These techniques are not applicable in high level languages.

  1. Pass by Result : This method uses out-mode semantics. Just before control is transfered back to the caller, the value of the formal parameter is transmitted back to the actual parameter.T his method is sometimes called call by result . In general, pass by result technique is implemented by copy.
  2. Pass by Value-Result : This method uses in/out-mode semantics. It is a combination of Pass-by-Value and Pass-by-result. Just before the control is transferred back to the caller, the value of the formal parameter is transmitted back to the actual parameter. This method is sometimes called as call by value-result
  3. Pass by name : This technique is used in programming language such as Algol . In this technique, symbolic “ name ” of a variable is passed, which allows it both to be accessed and update.

-vẫn link trên

Tức là C++ không có pass by value-result.

Bonus:

C++ Does not support Pass-by-value-result, however it can be simulated.

4 Likes

Pass by value-result:

Output: 1212614

s = 12
A[3] = { 12, 6, 14 }

Pass by reference:

Output: 103513

s = 10
A[3] = { 3, 5, 13 }

Pass by name:

Output: 243513

s = 24
A[3] = { 3, 5, 13 }

Kiểm tra coi đúng không?

2 Likes

bạn học bk hcm à ,hi

đúng rồi đó b…

Ông Phùng dạy đúng không?
Ổng chế code gì giống C++ dữ, bị dân tình blame quá trời :v

2 Likes

Mình học môn này lâu rồi, cứ ôn mấy cái bài tập trong giờ bài tập là đậu thôi, ra đề trong đó cả.
Chúc bạn qua môn có tỉ lệ rớt hơn 50%.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?