I'm getting an "unresolved external symbol "public:__thiscall hijo<int>::hijo<int>(void)" referenced in function_main
Tôi đã bắt đầu một dự án mới khiến tôi gặp phải lỗi tương tự trên một dự án lớn hơn. Lỗi xảy ra khi tôi cố gắng phân bổ không gian bằng cách sử dụng từ khóa mới. Nếu lỗi này là ngớ ngẩn xin vui lòng tha thứ cho tôi vì tôi đã không lập trình bất cứ điều gì trong những tháng qua.Lỗi trình liên kết khi sử dụng một lớp mẫu?
/********************file hijo.h******************/
#pragma once
#ifndef hijo_h
#define hijo_h
template <class A>
class hijo
{
public:
hijo(void);
~hijo(void);
};
#endif
/********************file hijo.cpp***************/
#include "hijo.h"
#include <iostream>
using namespace std;
template <class A>
hijo<A>::hijo(void)
{
}
template <class A>
hijo<A>::~hijo(void)
{
}
/*********************at main() function ***************/
#include <iostream>
#include "hijo.h"
int main(){
hijo<int> *h = new hijo<int>; <---- PROBLEM AT THIS LINE
system("pause");
return 0;
}
"nhưng tiếc là nó ở đây để ở" - cho đến khi chúng tôi nhận được mô-đun. \ * vượt qua các ngón tay * – Xeo
HOẠT ĐỘNG NHƯ MỘT CHARM, chỉ cần làm một chút sửa chữa cho giải pháp của bạn. thay vì thêm mã trong tệp .h tôi chỉ bao gồm tệp .cpp ở cuối tệp .h. Kết quả tương tự như cả hai phần đều nằm trong cùng một tệp. trong "hijo.cpp" #ifndef hijo_cpp #define hijo_cpp và ở dưới cùng #endif ... cảm ơn u cho câu trả lời của bạn ... – HoNgOuRu
gotta chờ hơn 8 phút để đánh dấu các câu hỏi như được trả lời – HoNgOuRu