Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: về friend và toán tử >>

  1. #1
    Ngày gia nhập
    10 2008
    Bài viết
    13

    Mặc định về friend và toán tử >>

    Java Code:
    1. #include <iostream>
    2. using namespace std;
    3. class phanso
    4. {
    5.     private:
    6.         int tuso, mauso;
    7.     public:
    8.         phanso() { tuso = 0; mauso = 1;}
    9.         phanso(int x, int y) {
    10.             if (y != 0) {
    11.                 tuso = x; mauso = y;
    12.             } else {
    13.                 cout<<"invalid argument"<<endl;
    14.             }
    15.         }
    16.                 friend ostream & operator<<(ostream &cout,const phanso &ps);
    17. }
    18. ostream & operator<<(ostream &cout,const phanso &ps)
    19. {
    20.    cout << tuso << "/" << mauso;
    21. }
    22. void main()
    23. {
    24.   phanso ps(1,2);
    25.   cout << ps;
    26. }
    cái này mình chỉ minh họa thôi trong file mình đính kèm mình viết rõ hơn.Mình viết hàm bạn toán tử >> nếu định nghĩa ngay trong class thì không có vấn đề gì nếu định nghĩa bên ngoài class thì nó thông báo là truy xuất trái phép,mình dùng hàm friend rồi không hiểu sao nó vậy.Mà nếu minh không #include <iostream> mà thay vào đó mình #include <iostream.h> thì dù định nghĩa trong hay ngoài cũng không bị gì cả.Ai biết chỉ với.

    Giả sử mình có lớp Người bên trong mình định nghĩa hàm ghi têp
    C++ Code:
    1. void ghitep()
    2. {
    3.   cout << hoten;
    4. }
    Lớp HocSinh kế thừa từ lớp người mình dùng hàm bạn cũng tên là ghitep
    Visual C# Code:
    1. void ghitep()
    2. {
    3.   ofstream cout(tentep);
    4.   Nguoi::ghitep();
    5.  cout << diachi;
    6. cout.close;
    7. }
    ý mình là đầu tiên tạo một tệp tên là "TenTep" ,mở nó ra và dùng cout để ghi dữ liệu vào tệp,vì đã định nghĩa ghitep() ở class people nên mình muốn sử dụng nó vì mình đang mở TenTep và cout là ghi dữ liệu vào đó,nên mình nghĩ là nếu dùng cout ở đó cũng ghi dữ liệu vào tệp,nhưng khi mình debug thì không được,nó chỉ ghi được có diachi thôi.
    Ai biết chỉ với
    sorry vì vào đây đánh lại nên thiếu sót edit lại
    Chú ý bỏ code vào thẻ code
    Attached Files Attached Files
    Đã được chỉnh sửa lần cuối bởi MQuy : 14-03-2009 lúc 11:01 AM.

  2. #2
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    - ostream đi với << không phải >> !
    C++ Code:
    1.  ostream cout(tentep);
    Viết cái gì thế này hả cậu ?
    - Có đọc sách kĩ chưa mà viết nhiều thế nhỉ ?

Các đề tài tương tự

  1. Bài tập C lỗi hàm friend
    Gửi bởi fushi_nguyen trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 26-12-2012, 05:45 PM
  2. Bài tập C++ bị lỗi hàm friend trong C++
    Gửi bởi ttkm4u trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 16-04-2012, 01:02 AM
  3. Kỹ thuật C++ lỗi ở hàm friend là hàm thành viên của 1 lớp khác
    Gửi bởi daisatthu04 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 01-04-2012, 11:33 PM
  4. [ Solved ]Lỗi khi sử dụng friend
    Gửi bởi bvKim trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 8
    Bài viết cuối: 19-11-2008, 12:41 PM
  5. [Support]A Friend...
    Gửi bởi embehoclaptrinh trong diễn đàn English for IT | Tiếng anh cho dân CNTT
    Trả lời: 1
    Bài viết cuối: 19-04-2007, 11:42 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn