đây bạn.
bạn có thể thấy lúc biên dịch = lệnh trên, chưa có tùy chọn -std=c++11 nên nó báo lỗi
còn khi thêm tùy chọn -std=c++11 thì nó biên dịch thành công và chạy bt.
Lỗi khi tạo file stream là thành phần của class
Bạn đã thử cách này:
cảm ơn bạn, đây chính là cách đầu tiên mình làm. Và trình dịch nó hiểu thành mình đang khai báo 1 hàm với tham số truyền vào mặc định là “hello.c”, và vì vậy nó yêu cầu mình xác định kiểu dữ liệu cho tham số đó.
mình nói ở trên rồi mà, từ c++11 thì cho phép khởi tạo giá trị cho thuộc tính của class luôn, nhưng khi mình khởi tạo luôn như vậy, nó hiểu thành mình đang khai báo 1 hàm với tham số truyền vào mặc định là “studentdb.csv”, mà tham số thì phải xác định kiểu, vậy là lỗi.
Bạn check lại nhé, mình dùng dấu {}
chứ không phải ()
std::fstream StdDB = std::fstream();
ta thử thấy compile được, ko biết chạy được ko
nếu () bị lầm thành method thì xài = luôn cho rồi
xài cái default value này của C++11 làm gì, viết ctor cho đàng hoàng là được
ko liên quan nhưng bạn cho mình hỏi làm sao để run c++ ra cửa sổ cmd trên sublime text như của bạn vậy?
mình đang chạy visual nên viết 1 đoạn code = sublimetext và lưu ở desktop, dùng g++ dịch để test nhanh thôi, mình mở cmd ra bạn ạ
Cái màu nền với màu chữ của cmd mình cài thành màu của sublime
cảm ơn bạn hôm trước ok rồi, tại dấu ngoặc tròn á.