hash_pointer_test.cpp

来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 50 行

CPP
50
字号
// Copyright 2005-2008 Daniel James.// Distributed under the Boost Software License, Version 1.0. (See accompanying// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)#include "./config.hpp"#ifdef TEST_STD_INCLUDES#  include <functional>#else#  include <boost/functional/hash.hpp>#endif#include <boost/detail/lightweight_test.hpp>#include <boost/limits.hpp>#include <boost/mpl/assert.hpp>#include <boost/type_traits/is_base_and_derived.hpp>#include "./compile_time.hpp"void pointer_tests(){    compile_time_tests((int**) 0);    compile_time_tests((void**) 0);    HASH_NAMESPACE::hash<int*> x1;    HASH_NAMESPACE::hash<int*> x2;    int int1;    int int2;    BOOST_TEST(x1(0) == x2(0));    BOOST_TEST(x1(&int1) == x2(&int1));    BOOST_TEST(x1(&int2) == x2(&int2));#if defined(TEST_EXTENSIONS)    BOOST_TEST(x1(&int1) == HASH_NAMESPACE::hash_value(&int1));    BOOST_TEST(x1(&int2) == HASH_NAMESPACE::hash_value(&int2));    // This isn't specified in Peter's proposal:    BOOST_TEST(x1(0) == 0);#endif}int main(){    pointer_tests();    return boost::report_errors();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?