如何使用typedef將整數或char等變量定義爲字符。有沒有什麼辦法可以做到這一點,所以我可以在C++中使用Print而不是cout?typedef int - >整數。我可以做cout->在C++中打印嗎?
回答
std::cout
是一個對象。
您可以使用參考給它另外一個名字:
std::cout << "Hello ";
std::ostream& Print = std::cout;
Print << "world\n";
但是,恩,請不要。大多數std::cout
是和現在很好理解;將它隱藏在另一個名稱後面,只是爲了混淆而引入混淆。
號
一般來說,您有
using
(或typedef
),用於類型別名- 爲變量別名
- 內聯函數(或宏),用於函數引用別名
所以一個內聯函數可能是一個好的改變原生你的情況(Print
聽起來像一個函數):
template<typename T>
inline void Print(T const& stuff)
{
std::cout << stuff;
}
int main()
{
Print("Hello");
Print(42);
Print("world");
}
現在你可以如通過更改代碼中的單行,輕鬆地更改所有使用Print
打印到std::cerr
而不是std::cout
的所有內容。
我可以在頭文件中定義我自己的用途嗎?這只是爲了便於閱讀。 – Rohan
是的,你可以。爲什麼不?雖然請注意,爲了將函數定義放在頭文件中,需要標記爲「inline」。否則,該定義需要位於.cpp文件中,並且只有其聲明才能出現在標題中。 – emlai
請記住,如果您嘗試傳入'std :: endl',則此方法將失敗。 – fuzzything44
- 1. 可以putchar打印一個整數嗎?
- 2. 我可以在SMLNJ中擴展typedef嗎?
- 3. 在C中打印整數char整數
- 4. 這可能嗎? typedef int char?
- 5. 我可以在Class之外typedef嗎?
- 6. 我們可以通過在C中使用裸地址來打印數據嗎?
- 7. typedef在C++中做什麼
- 8. 我們可以在Python中使用return來打印函數嗎?
- 9. 在C#中用{#}打印整個數字?
- 10. 可以在Grails 1.3.7中打印JSON嗎?
- 11. Python可以打印函數定義嗎?
- 12. 打印的整數
- 13. 我可以在Silverlight中打印內容嗎
- 14. 我可以在Adobe Air中打印HTMLLoader(pdf)嗎?
- 15. 我可以在Linux中編輯GCC的打印輸出嗎?
- 16. 我可以強制在HTML打印中跳轉頁面嗎?
- 17. 無法打印使用typedef構造的MyType中的值可能在C
- 18. 函數參數,我可以通過設置<Int>或[Int]
- 19. 這可以打印在同一行嗎?
- 20. 我可以使用PHP和Apache打印到我的打印機嗎?
- 21. 我們可以在pytest中的setup_module()或setup_class中打印命令行參數嗎?
- 22. 我可以做一個lambda參數嗎?
- 23. 我可以在cgo中使用C++嗎?
- 24. 我可以給打印選項打印在asp.net中的webform數據
- 25. 在int數組中打印出位
- 26. 在C中打印一個雙精度數而不是整數
- 27. 調用CLI ::陣列<int> ::通過在C的typedef反++/CLI
- 28. 在python中,我可以將打印函數的輸出重定向到stderr嗎?
- 29. 我可以在C中將0.16,0.32等轉換爲一個整數(16,32等)嗎?
- 30. 參數化typedef可能嗎?
'cout'不是一種類型。 'int'和'char'都不是函數。 –
'cout'也不是一個函數。 – emlai
對不起。那是我的不好。我的意思是變量 – Rohan