指向C+中唯一的函数参数的原始指针的用途是什么+;? 浏览TysFooS+C++ API,我偶然发现了一个奇怪的函数签名: Status Create( const FileSystemStoragePathSourceConfig & config, std::unique_ptr< FileSystemStoragePathSource > *result ) 状态创建( const FileSystemStoragePathSourceConfig&config, std::unique_ptr*结果 )

指向C+中唯一的函数参数的原始指针的用途是什么+;? 浏览TysFooS+C++ API,我偶然发现了一个奇怪的函数签名: Status Create( const FileSystemStoragePathSourceConfig & config, std::unique_ptr< FileSystemStoragePathSource > *result ) 状态创建( const FileSystemStoragePathSourceConfig&config, std::unique_ptr*结果 ),c++,c++11,smart-pointers,unique-ptr,C++,C++11,Smart Pointers,Unique Ptr,我不明白为什么result是指向unique\u ptr的原始指针。因为通常,当我们想将unique_ptr作为函数参数传递时,我们可以通过移动(&&)或引用&或通过值来传递。我以前没有见过指向unique\u ptr的原始指针的用例 TensorFlow是由谷歌制作的。说: 通过引用传递的所有参数必须标记为const 这意味着所有输出参数都必须是指针,而不是引用。这种风格不是惯用的C++(标准库通过引用传递输出参数),但谷歌的风格指南的支持者认为,将输出参数作为指针使输入哪些参数更清晰,哪些输

我不明白为什么
result
是指向
unique\u ptr
的原始指针。因为通常,当我们想将
unique_ptr
作为函数参数传递时,我们可以通过移动(
&&
)或引用
&
或通过值来传递。我以前没有见过指向
unique\u ptr
的原始指针的用例

TensorFlow是由谷歌制作的。说:

通过引用传递的所有参数必须标记为
const


这意味着所有输出参数都必须是指针,而不是引用。这种风格不是惯用的C++(标准库通过引用传递输出参数),但谷歌的风格指南的支持者认为,将输出参数作为指针使输入哪些参数更清晰,哪些输出更清晰。

< P> TensorFlow是谷歌制造的。说:

通过引用传递的所有参数必须标记为
const


这意味着所有输出参数都必须是指针,而不是引用。这种风格不是惯用的C++(标准库通过引用传递输出参数),但是谷歌风格指南的支持者认为,将输出参数作为指针使输入哪些参数更清晰,哪些输出更清晰。因此,它更喜欢按地址而不是按引用管理输出参数,因为调用语法很容易被误解。此外,它还允许输出参数是可选的。在
std::optional
“by value&”之前只能使用指针,您可能需要重新表述。By ref不是按值。胡乱猜测,因为编写它的人更喜欢按地址而不是按引用管理参数,调用语法很容易被误解。此外,它允许输出参数是可选的。在
std::optional
“by value&”之前只能使用指针,您可能需要重新表述。按引用不是按值。