相关疑难解决方法(0)

C++的隐藏功能?

当涉及到"问题线"的"隐藏特征"时,没有C++的爱吗?想我会把它扔出去.C++的一些隐藏功能是什么?

c++ hidden-features

114
推荐指数
38
解决办法
8万
查看次数

.*&运营商做什么?

我偶然发现了这个问题,其答案使用了一个奇怪的结构:

typedef std::queue<int> Q;
typedef Q::container_type C;

C & get (Q &q)
{
    struct hack : private Q {
        static C & get (Q &q) {
            return q.*&hack::c;
        }
    };
    return hack::get(q);
}
Run Code Online (Sandbox Code Playgroud)

我通常遵循它q可以访问cget函数引用的自己的成员.但是,我无法清楚地解释它.究竟发生了什么.*&,为什么允许?

c++ stl c++11

31
推荐指数
2
解决办法
1268
查看次数

有没有办法访问STL容器适配器的底层容器?

是否有一个标准来访问的底层容器的方式stack,queue,priority_queue

我发现了一个叫方法:_Get_container()VS2008实施stackqueue,但没有一个priority_queue!我认为它不是标准的.

另外,我知道这是一个愚蠢的问题!我在哪里可以找到标准库的官方文档?


仅仅为了澄清,我并没有试图弄乱底层容器.我试图做的就是:

template <class Container>
std::ostream& printOneValueContainer(std::ostream& outputstream, Container& container)
{
    Container::const_iterator beg = container.begin();

    outputstream << "[";

    while(beg != container.end())
    {
        outputstream << " " << *beg++;
    }

    outputstream << " ]";

    return outputstream;
}

// stack, queue
template
    < class Type
    , template<class Type, class Container = std::deque<Type> > class Adapter
    >
std::ostream& operator<<(std::ostream& outputstream, const Adapter<Type>& adapter) …
Run Code Online (Sandbox Code Playgroud)

c++ standards stl data-structures

24
推荐指数
3
解决办法
8682
查看次数

标签 统计

c++ ×3

stl ×2

c++11 ×1

data-structures ×1

hidden-features ×1

standards ×1