Cplusplus說「ostream對象(* this)」,但我不明白。返回ostream對象的指針?我已經嘗試用cout函數打印這個值,但是我始終打印0.此值如何有用?什麼返回ostream ::寫入?
-2
A
回答
0
通常在C++中,不需要返回特定值的方法類(例如在本例中爲string
)返回*this
。
C++中的每個對象都可以通過一個稱爲this指針的重要指針訪問自己的地址。這個指針是所有成員函數的隱式參數。因此,在成員函數內部,這可以用來引用調用對象。
感謝this
,您可以使用方法鏈,這是一個例子:
char c[]="This this this";
std::cout << (std::cout.write(c,4) << " hello ") << std::endl;
輸出: This hello 0x600e08
在這個例子中,我使用的運算符鏈上的目的,但它的與方法相同。
0x600e08
是你basic_ostream
對象的地址。
2
this
是一個指向當前調用對象的指針。
*this
取消引用指針。
這通常用於「鏈接」。 例如:
cout<<1<<2<<3<<4<<5;
操作< <在COUT被調用: COUT < 將打印1和cout返回,那麼我們將有:
cout<<2<<3<<4<<5;
等。
相關問題
- 1. 函數返回ostream的
- 2. 將Unicode字符寫入OStream
- 3. 返回什麼?
- 4. 什麼情況下ostream :: write或ostream :: operator <<會失敗?
- 5. 爲什麼`std :: common_type_t <std :: ostream&,std :: ostream&>`等於`std :: ostream`而不是`std :: ostream&`?
- 6. 爲什麼不寫(2)返回EINTR?
- 7. ostream&...這裏的'&'是什麼?
- 8. 什麼 - > std :: ostream&mean?
- 9. 什麼是朋友ostream
- 10. 爲什麼ImageIO.write在寫入JPEG 2000圖像時返回0?
- 11. 爲什麼boto沒有返回寫入S3的字節數?
- 12. 什麼返回mysqli_insert_id()?
- 13. CGColorGetComponents()返回什麼?
- 14. 爲什麼睡眠()塊的std :: ostream的
- 15. wave.readframes返回什麼?
- 16. 什麼是回寫?
- 17. 爲什麼。加入返回的翻譯:
- 18. fwrite()返回什麼類型?
- 19. 爲什麼它返回null?
- 20. 寫入返回骰子
- 21. 寫入返回值c
- 22. 返回做什麼?什麼都沒有返回
- 23. compareTo()返回什麼?
- 24. this.id返回什麼?
- 25. getCurrentPosition返回什麼?
- 26. TelephonyManager.getNetworkCountryIso()返回什麼?
- 27. 什麼「master.dbo.xp_fixeddrives」返回
- 28. main()返回什麼?
- 29. classname.class返回什麼?
- 30. request.getParameter返回什麼?
這意味着您正在寫入的流的引用。 –
請不要使用cplusplus作爲參考或其他任何東西。 –
得到[此引用一個嘗試(http://en.cppreference.com/w/cpp/io/basic_ostream/write)。此外,你知道你得到了什麼,然後你做'*這個'? – NathanOliver