记录一种引起 CL.exe/ C++ 编译器无任何提示直接崩溃的问题

只需定义在源文件或公共引入的头文件之中,编译必定CL.exe 退出,错误代码2,它不会产生任何语法意义上的错误提示,感兴趣的可以记录下。

引发崩溃的代码:

template 
class IS_CONFIG_LOADER_T_CLASS
{
public:
    template 
    static std::true_type test(int);

    template
    static std::false_type test(...);

    using value = decltype(test(0))::value;
};

修正崩溃的代码:

template 
class IS_CONFIG_LOADER_T_CLASS
{
public:
    template 
    static std::true_type test(int);

    template
    static std::false_type test(...);

    static constexpr bool value = decltype(test(0))::value;
};

你可能感兴趣的:(C/C++,c++,java,前端)