13,005
回編集
200行目: | 200行目: | ||
<u>後方互換性のためにサポートされている。</u><br> | <u>後方互換性のためにサポートされている。</u><br> | ||
<br> | <br> | ||
==== Q_DISABLE_COPY / Q_DISABLE_MOVE ==== | |||
<code>Q_DISABLE_COPY</code>マクロは、クラスのコピーコンストラクタとコピー代入演算子を削除する。<br> | |||
これにより、クラスのインスタンスが誤ってコピーされることを防ぐ。<br> | |||
<br> | |||
<code>Q_DISABLE_MOVE</code>マクロは、クラスのムーブコンストラクタとムーブ代入演算子を削除する。<br> | |||
これにより、クラスのインスタンスが移動されることを防ぐ。<br> | |||
<br> | |||
これらは、以下に示すようなメリットがある。<br> | |||
* オブジェクトの意図しない複製や移動を防ぐことができる。 | |||
* リソースの所有権に関する問題を回避できる。 | |||
* クラスの設計意図を明確に示すことができる。 | |||
<br> | |||
==== Q_FLAG / Q_FLAGS ==== | ==== Q_FLAG / Q_FLAGS ==== | ||
列挙型をQtのメタオブジェクトシステムに登録するために使用する。<br> | 列挙型をQtのメタオブジェクトシステムに登録するために使用する。<br> |