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

Đề tài: [ Solved ]Hỏi về phương thức trong lớp (class )!

  1. #1
    Ngày gia nhập
    03 2008
    Nơi ở
    Đà Nẵng city
    Bài viết
    40

    Mặc định [ Solved ]Hỏi về phương thức trong lớp (class )!

    Mình đang học đến phần class, nhưng chưa hiểu lắm về cách truyền tham số vào các phương thức trong class.
    Ví dụ : về bài quản lý SV, khi mình dùng struct thì chỉ cần khai báo kiểu struct sv {...}, sau đó viết hàm nhập(sv i1[], int n) ( nhập dữ liệu cho n sv của i1[] ) là đc, nhưng trong class, khi khai báo 1 class là sv, trong đó có phương thức nhập( cũng nhấp dữ liệu cho n sv của i1[70] chẳng hạn ) thì mình phải truyền tham sô cho phương thức đó ntn? và khi gọi phương thức đó thì gọi ntn?

    C++ Code:
    1. class sv
    2. {
    3.       private:
    4.               char ten[20],masv[20],xl[10];
    5.               float diem;
    6.               int namsinh;
    7.       public:
    8.              void nhap (???);
    9.              void xloai(???);
    10.              void xuat (???);
    11. }

    C++ Code:
    1. sv i1[60];
    2.  
    3. i1[60].nhap(???);
    4. i1[60].xl(???);
    5. i1[60].xuat(???);

    Cảm ơn vì đã đọc và giúp đỡ
    Đã được chỉnh sửa lần cuối bởi camping29 : 07-10-2008 lúc 01:57 PM. Lý do: Thêm thông tin bài viết

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

    OOP C++ ra đời 1 phần cũng là cách giảm các tham số truyền vào hàm. Nếu pure C muốn viết safe-code thì cậu không được dùng global, nếu không có class, thì hàm xử lý sẽ truyền vào rất nhiều tham số. C++ có class, hàm nó sẽ thao tác trên các dữ liệu trong Class, vì vậy chẳng cần tham số gì cũng được ! Cứ như các dữ liệu trong Class là global vậy, chỉ cần viết định nghĩa thôi là xong. Cách gọi hàm thì dùng toán tử "."( dot operator ) là đúng rùi đó !

  3. #3
    Ngày gia nhập
    12 2007
    Bài viết
    54

    cái này ko cần truyền vào tham số vì các hàm lấy dữ liệu từ các thuộc tính của nó private .
    khi gọi hàm thì bạn dùng : doi_tuong.namefunction(tham so) ( đối với trường hợp đối tượng ko phải là con trỏ )
    Rất mong được mọi người giúp đỡ :

    Kiến thức mình biết chỉ là hạt cát trên sa mạc

  4. #4
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    char ten[20],masv[20],xl[10];
    float diem;
    int namsinh;
    việc truyền tham số hay không còn tùy thuộc vào mục đích lập ra hàm của bạn nữa,nếu bạn muốn thao tác trên các dữ liệu của class thì không cần thêm tham số,còn không thì vẫn cần có tham số

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

  1. [ Solved ]Class hàng bán
    Gửi bởi luxiphe89 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 26
    Bài viết cuối: 09-11-2008, 10:04 AM
  2. [ Solved ]Hỏi về lớp bao(wrapped class) trong C++
    Gửi bởi redzeus02468 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 18
    Bài viết cuối: 20-09-2008, 08:23 PM
  3. [ Solved ]Hỏi về class?
    Gửi bởi khanh_0507 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 12-09-2008, 10:54 AM
  4. [ Solved ]Thắc mắc về <Class> trong OOP.
    Gửi bởi hacker_mubaohiem trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 14-03-2008, 04:15 PM
  5. Function Pointer trong Class, lỗi cannot convert from 'int (__cdecl *)(int)' to 'int (__thiscall Class::*)(int)'
    Gửi bởi DKhanh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 15-12-2007, 04:04 PM

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