std::experimental::filesystem::current_path
來自 cppreference.com
< cpp | experimental | fs
定義於標頭檔案 <experimental/filesystem> |
||
path current_path(); |
(1) | (檔案系統 TS) |
path current_path( error_code& ec ); |
(2) | (檔案系統 TS) |
void current_path( const path& p ); |
(3) | (檔案系統 TS) |
void current_path( const path& p, error_code& ec ); |
(4) | (檔案系統 TS) |
返回或改變當前路徑。
目錄 |
[編輯] 引數
p | - | 要改變為當前工作目錄的路徑 |
ec | - | 用於在非丟擲過載中報告錯誤的輸出引數 |
[編輯] 返回值
1,2) 返回當前工作目錄。
3,4) (無)
[編輯] 異常
1,2) 不接受 error_code& 引數的過載在底層 OS API 錯誤時丟擲 filesystem_error,構造時以 OS 錯誤碼作為錯誤碼引數。如果記憶體分配失敗,可能會丟擲 std::bad_alloc。接受 error_code& 引數的過載,如果 OS API 呼叫失敗,則將其設定為 OS API 錯誤碼;如果沒有錯誤發生,則執行 ec.clear()。此過載具有
noexcept 規範:
noexcept
3,4) 不接受 error_code& 引數的過載在底層 OS API 錯誤時丟擲 filesystem_error,構造時以 p 作為第一個引數,OS 錯誤碼作為錯誤碼引數。如果記憶體分配失敗,可能會丟擲 std::bad_alloc。接受 error_code& 引數的過載,如果 OS API 呼叫失敗,則將其設定為 OS API 錯誤碼;如果沒有錯誤發生,則執行 ec.clear()。此過載具有
noexcept 規範:
noexcept
[編輯] 注意
當前工作目錄是用於相對路徑路徑解析的起始位置的目錄。單個當前工作目錄與整個程序相關聯。
當前工作目錄是程式的一個危險的全域性狀態。各種檔案輸入/輸出相關函式的行為受當前路徑值的影響。當前路徑可能被程式的任何元件意外更改,包括各種外部庫或其他執行緒。
[編輯] 參閱
本節不完整 |