Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ xlc:模板化类的sizeof不工作_C++_Templates_Xlc - Fatal编程技术网

C++ xlc:模板化类的sizeof不工作

C++ xlc:模板化类的sizeof不工作,c++,templates,xlc,C++,Templates,Xlc,我在模板参数中使用sizeof(),如下所示: #include <iostream> template<class A> struct Foo { A a; }; template<class A, size_t S = sizeof(Foo<A>)> class Bar { public: Bar() { // prints 4, as expected std::cout <<

我在模板参数中使用sizeof(),如下所示:

#include <iostream>

template<class A>
struct Foo {
    A a;
};

template<class A, size_t S = sizeof(Foo<A>)>
class Bar {
public:
    Bar() {
        // prints 4, as expected
        std::cout << sizeof(Foo<A>) << std::endl;

        // prints 1! why?
        std::cout << S << std::endl;
    }
};

int main(int, char**) {
    Bar<int> foo;
}
#包括
模板
结构Foo{
A A;
};
模板
分类栏{
公众:
Bar(){
//按预期打印4张

std::cout这可能是编译器中的一个bug,它已在AIX上修复,但在Z上未修复

在AIX上测试最新(即ptf)版本 V13.1.3预期结果 V13.1预期结果 V12.1预期结果 V11.1预期结果

关于佐斯 V2R1失败 V2R2失效


如果您报告了错误,我们可以将修复程序放入V2R1。

编译器错误?而且,我无法在MSVC、Clang和GCC上复制它