Namespaces
Variants

std::filesystem:: temp_directory_path

From cppreference.net
ヘッダーで定義 <filesystem>
path temp_directory_path ( ) ;
(1) (C++17以降)
path temp_directory_path ( std:: error_code & ec ) ;
(2) (C++17以降)

一時ファイルに適したディレクトリの場所を返します。

目次

パラメータ

(なし)

戻り値

一時ファイルに適したディレクトリ。このパスは存在することが保証されており、ディレクトリであることも保証されています。 error_code & 引数を受け取るオーバーロードは、エラー時に空のパスを返します。

例外

noexcept でマークされていないオーバーロードは、 メモリ確保に失敗した場合に std::bad_alloc をスローする可能性があります。

1) 基盤OS APIエラーが発生した場合 std::filesystem::filesystem_error を送出します。これは、返されるべき path を第一パス引数として、OSエラーコードをエラーコード引数として構築されます。
2) OS API呼び出しが失敗した場合、 std:: error_code & パラメータにOS APIエラーコードを設定し、エラーが発生しなかった場合は ec. clear ( ) を実行します。

注記

POSIXシステムでは、パスは環境変数 TMPDIR TMP TEMP TEMPDIR で指定されたもの、あるいはそれらのいずれも指定されていない場合、パス "/tmp" が返されます。

Windowsシステムでは、パスは通常 GetTempPath によって返されるものです。

#include <filesystem>
#include <iostream>
namespace fs = std::filesystem;
int main()
{
    std::cout << "Temp directory is " << fs::temp_directory_path() << '\n';
}

出力例:

Temp directory is "C:\Windows\TEMP\"

関連項目

一時的で自動削除されるファイルを作成して開く
(関数)
現在の作業ディレクトリを返す、または設定する
(関数)