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

Đề tài: sử dụng string trong C++. Lỗi C2146: syntax error : missing ';' before identifier tại string string_rep()const;?

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

    Mặc định sử dụng string trong C++. Lỗi C2146: syntax error : missing ';' before identifier tại string string_rep()const;?

    em có đoạn code thế này
    C++ Code:
    1. #include<iostream>
    2. #include<string>
    3.  
    4. class Date1
    5. {
    6. public:
    7.    
    8.     enum Month{jan=1,feb=2,mar,apr,may,jun,jul,aug,sep,oct,nov,dec};
    9.     class bad_date{};//lớp biệt lệ exception class
    10.     //cách khởi tạo
    11.     Date1(int dd=0,Month mm=Month(0),int yy=0);
    12.     //xem xét
    13.     int day()const;
    14.     Month month()const;
    15.     int year() const;
    16.     //xử lý
    17.     string string_rep()const;
    18.    
    19.     void char_rep(char s[])const;
    20.     void static set_default(int,Month,int);
    21.     //các phép toán
    22.     Date1& add_day(int n);
    23.     Date1& add_month(int n);
    24.     Date1& add_year(int n);
    25. private:
    26.     int d,m,y;
    27.     static Date1 date_default;
    28. };
    29. Date1::Date1(int dd,Month mm,int yy)
    30. {
    31.     d=dd;m=mm;y=yy;
    32. }
    nhưng khi biên dịch nó báo lỗi thế này
    Code:
    Error	3	error C2146: syntax error : missing ';' before identifier 'string_rep'	d:\levanvuong\hoc tap\hoc c++\loptrongc++\loptrongc++\date1.h	18	loptrongC++
    
    Error	4	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	d:\levanvuong\hoc tap\hoc c++\loptrongc++\loptrongc++\date1.h	18	loptrongC++
    
    Error	5	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	d:\levanvuong\hoc tap\hoc c++\loptrongc++\loptrongc++\date1.h	19	loptrongC++
    khi em click xem lỗi thì nó chỉ lỗi do dòng này
    Code:
    string string_rep()const;
    em không hiểu tại sao cả vì khi em khai báo như vậy bên hàm main() thì k vấn đề gì!
    ai biết được xin giúp em. thanks

  2. #2
    Ngày gia nhập
    07 2011
    Bài viết
    160

    string nằm trong namespace std, vì vậy bạn phải viết std::string hoặc khai báo using namespace std;

  3. #3
    Ngày gia nhập
    01 2011
    Bài viết
    10

    oh my god. thanks fbchicken. vậy mà coi qua rồi coi lại chẳng biết bị lỗi gì.

  4. #4
    Ngày gia nhập
    09 2011
    Bài viết
    1

    Mình đang dùng dev c++ 4.9.9.5 và Microsoft visual C++ 2008

    cả 2 bản mình dùng đều không dùng được hàm string trong việc khai báo biến.dù mình đã khai báo thư viện rồi

    #include <string>

    string name;

    nhưng chữ string k hiện lên màu của kí tự đặc biệt.

    và trong MS2008 thì thư viện string cũng k dùng được lun.

    Mong nhận được sự giúp đỡ của các bạn trong diễn đàn.

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

  1. Trả lời: 7
    Bài viết cuối: 21-09-2012, 12:36 PM
  2. MS SQL với C# Xử lý table tonkho bị lỗi: Syntax error converting datetime from character string?
    Gửi bởi sonsonsonson trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 5
    Bài viết cuối: 29-08-2011, 02:17 PM
  3. Lập trình C++ Lỗi error C2146: syntax error : missing ';' before identifier 'r'
    Gửi bởi mrmaxi trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 7
    Bài viết cuối: 31-07-2011, 10:56 AM
  4. Lập trình C bị lỗi "C:\Project\project\firstsource.c(12) : error C2146: syntax error : missing ';' before identifier 'printf'"
    Gửi bởi lapmaihokdc trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 02-07-2011, 07:09 PM
  5. error C2146: syntax error : missing ';' before identifier 'NET_IFTYPE'.
    Gửi bởi Lotches trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 0
    Bài viết cuối: 18-04-2009, 09:57 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