|
|
1
4
使用VC10,您链接到的解决方案不起作用-的实例的构造
我只想做一个
... 或者使用自定义
|
|
|
2
4
对于最初的问题,std::make_shared<…>()没有直接实例化类,因此提供对它的友元访问不会产生任何好处,正如您所发现的那样。您只需提供对直接使用受保护构造函数的代码的友好访问,如下所示:
这适用于VS2010中的Microsoft编译器,但看起来它可能是特定于环境的,因为它不适用于Linux上的gcc。对于gcc,std::tr1命名空间不存在,因此它必须特定于std库的Microsoft实现。 我的正常工作环境是英特尔12.1编译器,它似乎有一个根本不检查访问权限的bug,并且很高兴在没有任何友元声明的情况下构建代码。 |
|
|
user1682076 · 声纳错误-使此成员“受保护” 8 年前 |
|
|
Scratch Cat · 使用继承的受保护成员时出现问题(C++) 8 年前 |
|
|
gwizardry · 私有静态列表是限制类实例集的适当方法吗 8 年前 |
|
|
Kiel · 铁路超高访问背后的变量代码 8 年前 |
|
|
Abu Muhammad · 为什么此受保护的成员在子类[重复]中不可见 10 年前 |
|
|
user1868607 · 从超类调用受Ruby保护的可见性 10 年前 |
|
|
PeakGen · 访问子类中的“受保护”数据时出现“标识符未定义”错误 12 年前 |