1 // Copyright 2014 The Android Open Source Project 2 // 3 // This software is licensed under the terms of the GNU General Public 4 // License version 2, as published by the Free Software Foundation, and 5 // may be copied, distributed, and modified under those terms. 6 // 7 // This program is distributed in the hope that it will be useful, 8 // but WITHOUT ANY WARRANTY; without even the implied warranty of 9 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 // GNU General Public License for more details. 11 12 #ifndef ANDROID_BASE_COMPILER_H 13 #define ANDROID_BASE_COMPILER_H 14 15 // Use this in the private section of a class declaration to ensure 16 // that the corresponding objects cannot be copy-constructed or 17 // assigned. For example: 18 // 19 // class Foo { 20 // public: 21 // .... public declarations 22 // private: 23 // DISALLOW_COPY_AND_ASSIGN(Foo) 24 // .... other private declarations 25 // }; 26 // 27 #define DISALLOW_COPY_AND_ASSIGN(T) \ 28 T(const T& other); \ 29 T& operator=(const T& other) 30 31 #endif // ANDROID_BASE_COMPILER_H 32