Tôi có Simpletron.cpp
mà là một trống tập tin, một Simpletron.h
mà khai báo một lớp Simpletron
:Không thực hiện trong C++ nhưng vẫn có thể gọi nó là
class Simpletron
{
public:
Simpletron();
};
tôi gọi Simpletron()
trong main.cpp tôi:
#include <iostream>
#include "Simpletron.h"
int main(int argc, char *argv[])
{
Simpletron s();
std::cin.get();
}
Chức năng chính chỉ chạy trơn tru mà không có bất kỳ cảnh báo hoặc lỗi nào. Tại sao vậy? Làm thế nào mà thậm chí biên dịch nếu không có inplementation tập tin tiêu đề có thể liên kết đến?
@ Smac89: Không phải khi bạn khai báo. Có lẽ tôi sẽ phát điên, nhưng ít nhất 7 người khác cũng sai. Chương trình này sẽ gây ra lỗi liên kết, [ví dụ] (http://ideone.com/5m0ygK). – GManNickG
@octef: Vui lòng cung cấp mã và dòng lệnh thực của bạn. Ví dụ: định nghĩa lớp của bạn thiếu dấu chấm phẩy sau khi nó không thể là mã bạn đang biên dịch. – GManNickG
Chắc chắn, chờ một phút. – octref