2012-08-09 53 views
14

Bây giờ đây là một vấn đề lạ. Tôi đã được mã hóa hai ngày trước và dừng lại và sau đó tiếp tục ngay bây giờ. Mở tập tin tiêu đề của tôi (Fruit.h) Tôi đã thêm một phương pháp gọi là animateGrow() như vậy:Lỗi định nghĩa ngoài dòng trên một lớp nhưng được khai báo trong tệp tiêu đề

Fruit.h:

class Fruit { 
private: 
    // Member variables here 

public: 
    // Other methods here 
    void animateGrow(); 
}; 

Nhưng khi tôi cố gắng thêm các phương pháp tương tự trong file CPP, tôi nhận được một lỗi Out-of-line definition of 'animateGrow' does not match any declaration in 'Fruit' . Nó được khai báo trong tiêu đề nhưng Xcode dường như không thể tìm thấy phương thức đó.

Fruit.cpp:

#include "SimpleAudioEngine.h" 
#include "Fruit.h" 
#include "Tree.h" 

using namespace cocos2d; 
using namespace CocosDenshion; 

Fruit::Fruit() { 
    // Constructor 
} 

// Getter Methods 
// Setter Methods 
// Other Methods 

void Fruit::animateGrow() { 
    // I get an error here when I type it. 
} 

Full Mã: (liên kết loại bỏ) (Trong đoạn mã, lớp Tree tồn tại và tất cả các phương pháp và các chức năng khác đang làm việc tốt, ngoại trừ cho animateGrow() vì nó mang lại cho tôi lỗi)

+0

Bạn nên đóng câu hỏi vì tính hữu dụng của nó đối với người dùng trong tương lai không bị giới hạn. Vui vì bạn đã sửa nó và chúc may mắn. –

+0

@ DavidRodríguez-dribeas Tôi làm cách nào để đóng một câu hỏi? Xin lỗi, tôi không quen với điều này. – alxcyl

+0

Uhm ... không có liên kết nào bên dưới các thẻ? (Có thể bạn cần một số danh tiếng để làm điều đó ... nếu liên kết không có ở đó, đừng lo, ai đó sẽ đóng nó lại - Tôi đã bỏ phiếu để đóng, nó chỉ cần thêm một vài phiếu nữa :) –

Trả lời

9

Đã sửa lỗi.

Tôi không biết tại sao nhưng Xcode không lưu thay đổi của tôi trên tệp tiêu đề. Tôi đã đóng Xcode và mở tệp tiêu đề và các thay đổi không có ở đó. Tôi đã thêm lại các phương thức và lưu lại. Tôi đã mở tệp CPP đã thêm phương thức mới trong đó hoạt động tốt.

Thật kỳ lạ.

+0

Sau khi mở lại Xcode có vẻ OK trong trường hợp của tôi :) –

+0

Tôi đã có thông báo lỗi chính xác tương tự trên BSD bằng cách sử dụng tiếng kêu. Câu trả lời của bạn làm cho tôi nhìn vào tiêu đề cho mã của tôi, chắc chắn đủ, tôi đã không khai báo func trong tiêu đề. Cảm ơn! –

+0

Tôi muốn nói rằng nó giúp tôi.Thanks – hotpro

Các vấn đề liên quan