Code bị lỗi "variable-sized object may not be initialized"

Bai nay em bi loi “variable-sized object ‘a’ may not be initialized”, cac anh xem giup e cach sua dc k?

#include <iostream>
#include <cmath>
using namespace std;
#include "tamgiac.h"
#include "point.h"
Tamgiac a[100];
int main()
{
    
    float h1,h2,h3;
    float t1,t2,t3;
    for(int i=0;i<3;i++)
    {
       
        cin>>h1>>t1>>h2>>t2>>h3>>t3;;
        Tamgiac a[i](Diem(h1,t1),Diem(h2,t2),Diem(h3,t3));
    }
    for(int i=0;i<3;i++)
    {
        cout<<"Chu vi cua tam giac thu: "<<i+1<<" la: "<<a[i].chuvi()<<endl;
        cout<<"Dien tich cua tam giac thu "<<i+1<<" la: "<<a[i].dientich()<<endl;
    }
    return 0;
}

Bạn chưa khởi tạo giá trị cho biến a kìa :slight_smile:

Dòng này
Tamgiac a[i](Diem(h1,t1),Diem(h2,t2),Diem(h3,t3));
chắc là thớt muốn gán vào mảng. Nhưng mà nó sai ở chỗ cú pháp này không phải là lệnh gán mà là lệnh tạo 1 đối tượng mới. Tốt nhất nên tạo pt nhập cho Tamgiac.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?