好吧,我会很直截了当,我只有一段 C++ 代码,我不确定我是否真的理解它,需要一些帮助。
好吧,为了简化起见,我们只说我有一个这样定义的类:(真正的类有点复杂,但这才是最重要的)
class myClass : public Runnable {
Semaphore *m_pMySemaphore;
__Queue<Requests> *m_pQueue;
Request m_Request;
VetorSlotBuffer *m_vetorSlotBuffer;
}
到这里没有任何问题,myClass 只是一个常规类,它有 3 个成员,它们实际上是指向其他类的指针和类 Request 的一个对象,这些类的实现对我在这里的观点并不重要。
然后当这个人为 myClass 实现构造函数时,他或她这样做了:
myClass::myClass() : m_pMySemaphore(0), m_pQueue(0), m_vetorSlotBuffer(0) {
}
很明显,这三个变量被构造函数那样对待,因为它们是指针,对吗?但那是什么样的语法呢?我是通过这样做将指针设置为 null 吗?我已经看过一点 C++,但从未发现过类似的东西。
其次,构造函数声明后的“:”是怎么回事?我见过但从未花时间去调查。这像是内部类还是什么?
非常感谢您。 尼尔森·佩雷斯
最佳答案
关于c++ - 奇怪的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2604176/