test6.cpp

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

CPP
75
字号
//-----------------------------------------------------------------------------// boost-libs variant/test/test6.cpp header file// See http://www.boost.org for updates, documentation, and revision history.//-----------------------------------------------------------------------------//// Copyright (c) 2003// Eric Friedman, Itay Maman//// 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 "boost/test/minimal.hpp"#include "boost/variant.hpp"#include <iostream>#include "jobs.h"//Just Another Classstruct jac{   jac() { }   jac(int ) { }   jac(const char* ) { }};std::ostream& operator<<(std::ostream& out, const jac& ){   out << "jac ";   return out;}void run(){   using boost::variant;   variant<jac, int, double*, const double*> v1;      variant<int, char, double*, const double*, char*> v2;   v1 = v2;   verify(v1, spec<int>());   verify(v2, spec<int>());   verify_not(v1, spec<jac>());   verify_not(v1, spec<double*>());   verify_not(v1, spec<const double*>());   verify_not(v2, spec<char>());   verify_not(v2, spec<double*>());   verify_not(v2, spec<const double*>());   verify_not(v2, spec<char*>());   variant<jac, const double*> v3;   variant<int, unsigned char, double*> v4;   v3 = v4;   verify(v3, spec<jac>());   verify(v4, spec<int>());   verify_not(v4, spec<unsigned char>());}int test_main(int , char* []){   run();   return 0;}

⌨️ 快捷键说明

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