che*_*r89 16 c++ explicit-constructor
实际上我的问题都在标题中.
无论如何:
我有一个类,我使用显式构造函数:
.h
class MyClass
{
public:
explicit MyClass(const string& s): query(s) {}
private:
string query;
}
Run Code Online (Sandbox Code Playgroud)
是否必须在实现(.cpp)文件中放置显式关键字?
Gre*_*ill 23
不它不是.该explicit关键字仅在标题中允许.我的gcc说:
test.cpp:6: error: only declarations of constructors can be 'explicit'
Run Code Online (Sandbox Code Playgroud)
对于以下代码:
class foo {
public:
explicit foo(int);
};
explicit foo::foo(int) {}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5356 次 |
| 最近记录: |