Trong C++, khi tôi đang sử dụng std::cout
như thế:Là std :: cout hoạt động hoàn toàn trên ngăn xếp?
std::cout << "myString" << std::endl;
Có điều gì đó sẽ được phân bổ trên đống bởi std :: cout? Hoặc sẽ std :: cout làm tất cả mọi thứ trên ngăn xếp (có nghĩa là std :: cout và các chức năng cơ bản của nó sẽ không làm bất kỳ new/malloc/etc...
)?
Tôi muốn biết nếu nặng nề using std :: cout có thể gây ra một số đống phân mảnh
Không đảm bảo rằng toán tử << (std :: ostream &, T) 'sẽ không gọi' mới'. Điều này rõ ràng là đúng đối với bất kỳ 'T' do người dùng định nghĩa. –
Tại sao bạn lo lắng bởi sự phân mảnh heap. Có cái gì khác bạn đang làm mà làm cho một mối quan tâm lớn? –
@LokiAstari Tôi chỉ yêu cầu điều đó từ sự tò mò. – Mesop