cuốn sách gpt4 ai đã làm

Làm cách nào để sử dụng vectơ C++ với cấu trúc do người dùng xác định?

In lại Tác giả: Walker 123 Thời gian cập nhật: 27-11-2023 22:51:42 26 4
mua khóa gpt4 Nike

Tôi đang cố gắng sử dụng vectơ để quản lý một mảng cấu trúc nhưng tôi liên tục nhận được thông báo lỗi.

vector được khai báo trong tệp tiêu đề là:

vector< TLE_Values, bộ cấp phát > Vệ tinh đã lưu;

Rất hài lòng với VS2013.

Cấu trúc được định nghĩa là:

cấu trúc TLE_Values
{
chuỗi Danh mụcNum;
chuỗi Tên vệ tinh;
chuỗi DateStr;
chuỗi TimeStr;
Phân loại chuỗi;
tăng gấp đôi DecayValue;
int ElsetNum;
Giá trị nghiêng gấp đôi;
gấp đôi RaanValue;
Giá trị lệch tâm gấp đôi;
nhân đôi ArgPerigeeValue;
gấp đôi PerigeeAngle;
gấp đôi Tốc độ trung bình;
Thời gian gấp đôi;
int OrbitNum;
};

và được khởi tạo bởi hàm tạo bằng các giá trị mặc định.

Trong mã chương trình chính, sau khi xác định số phần tử tôi cần (CountItemsInFile()), tôi cố gắng mở rộng danh sách vectơ bằng cách sử dụng:

Đã lưuSatellites.push_back(CountItemsInFile());

Tuy nhiên, điều này trả về thông báo lỗi trình biên dịch sau:

lỗi C2664: 
'void std::vector<>>::push_back(const TLE_Values ​​​​&)' : không thể chuyển đổi đối số 1 từ 'int' thành 'TLE_Values ​​​​&&'
1> Lý do: không thể chuyển đổi từ 'int' sang 'TLE_Values'
1> Không có hàm tạo nào có thể lấy loại nguồn hoặc độ phân giải quá tải của hàm tạo không rõ ràng.

Một luồng khác đề xuất rằng vectơ cần được khởi tạo bằng 0, điều này không xảy ra với các kiểu do người dùng xác định như thế này. Tôi đang thiếu gì? Tôi đã sai ở đâu? Làm cách nào tôi có thể tạo một vectơ ban đầu với cấu trúc của mình? Có rất nhiều tài liệu về cách sử dụng vectơ loại (int), nhưng sẽ không có nhiều tài liệu nếu bạn không làm việc với số nguyên.

câu trả lời hay nhất

Mở rộng việc sử dụng vectơ

Đã lưuSatellites.resize(CountItemsInFile());

Nếu bạn chỉ muốn dành bộ nhớ cho nó nhưng giữ nguyên kích thước của vectơ và chuẩn bị cho các lần đẩy ngược tiếp theo mà không phân bổ lại bộ nhớ:

Đã lưuSatellites.reserve(CountItemsInFile());

Làm cách nào để sử dụng vectơ C++ với cấu trúc do người dùng xác định? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/36620556/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress