通过构造函数传递对象的引用

时间:2015-11-16 11:32:43

标签: c++ constructor reference

我有一个CM类,它有一个构造函数如下:

<table border="1">
    <thead>
        <tr>
            <th rowspan="4">Items</th>
            <th rowspan="4">Type</th>
            <th rowspan="4">Type</th>
            <th colspan="4">Values</th>
            <th>Values</th>
            <th rowspan="4">Date</th>
                    <th rowspan="4">Date</th>
        </tr>
        <tr>
            <th colspan="4">Before</th>
            <th >Before</th>

        </tr>
        <tr>
            <th colspan="5">Before</th>



        </tr>

       <tr>
            <th colspan="4">Before</th>
            <th >Before</th>
        </tr>

    </thead>
    <tbody></tbody>
</table>

从另一个类(Ad类)我想创建一个对象

Ad.h

CM::CM(const std::vector<Something>& vector1, const SomethingElse&     something):myVector(vector1),mySomething(something)
{
}

Ad.cpp

CM* cmObj;

我还想将cmObj实例化为NULL。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

Pre C ++ 11,使用cmdObj = NULL将指针设置为空指针值。

不要使用malloc和强制转换,因为CM的构造函数不会被调用,虚函数表之类的东西也无法正确设置。

请改用cmObj = new CM(/*ToDo - constructor arguments here*/);。不要忘记在某个地方拨打delete cmObj;Ad析构函数是一个好地方。)