The error description string is added to the error code. The error description can be extended to the user side.
注意
This function is thread-safe. It stores only string pointers and does not perform deep copy. The same error can be added multiple times and overwrites the previously added error.