我自己编写了一个 C++ 类A
,里面的成员变量b
类型是第三方库提供的类B
,但是这个类B
的构造函数是 private
的,这个样子类A
在调用构造函数的时候没法初始化这个类成员变量 b
,编译的时候会报无法访问B
的私有成员。
我自己编写了一个 C++ 类A
,里面的成员变量b
类型是第三方库提供的类B
,但是这个类B
的构造函数是 private
的,这个样子类A
在调用构造函数的时候没法初始化这个类成员变量 b
,编译的时候会报无法访问B
的私有成员。
2 回答1.7k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
2 回答2.8k 阅读
1 回答1.6k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答930 阅读
1 回答1.1k 阅读
既然B类的构造函数是private的,那么原作者的设计就是不想让外部来实例化B。
1. 考虑B是否是工厂类,尝试使用B.newInstance();或者B.getInstance();方式进行实例化
2. 考虑B是否一个静态类,那么你需要使用B类的方法时,直接B.doSomething();调用即可
首先你去查查文档吧。