C ++のconstメンバ関数

C ++のconstメンバ関数

constメンバ関数

関数定義の後、プラスconstのconstメンバ関数になった、その役割はから変数の内部には、メンバ関数が誤って変更されていないされていることを確認することです。constメンバ関数内では、コンパイルエラーが発生します任意のメンバ変数を変更しようとします。

また、注意してください:constオブジェクトはconstメンバ関数を呼び出すことができ、
一般的なオブジェクトには、一般的なメンバ関数やconstメンバ関数を呼び出すことができます。

メンバ関数constメンバ関数のように定義されます。TensorRT/samples/common/buffers.hDeviceAllocatoroperator()

class DeviceAllocator
{
public:
    //注意其參數是指標的指標void**
    bool operator()(void** ptr, size_t size) const
    {
        return cudaMalloc(ptr, size) == cudaSuccess;
    }
};

(ただし、DeviceAllocatorこのカテゴリは、メンバ変数ではありませんので、メンバ変数が変更される心配がない、そしてここでしまうoperator()意思のconstメンバ関数として定義します?)

参考リンク

クラスの関数宣言で最後の「CONST」の意味?

C中のconstメンバ関数++

公開された97元の記事 ウォンの賞賛9 ビュー50000 +

おすすめ

転載: blog.csdn.net/keineahnung2345/article/details/104082539