typetraits

    4

    4답변

    스칼라 형식 (정수, 부동 소수점 등)에 대해서만 인스턴스화 할 수있는 템플릿 클래스가 있으며 구성원의 typedef가 항상 형식의 서명 된 변형이되도록하고 싶습니다. 즉 : unsigned int ->signed int signed long long ->signed long long (이미 서명) unsigned char ->signed char floa

    3

    2답변

    는 다음 테스트를 고려 근본적인 유형의 모든 CONST/휘발성/서명/서명되지 않은 버전에 대한 사실이다 : std::is_same<T, bool>::value std::is_same<T, char>::value std::is_same<T, short int>::value std::is_same<T, int>::value std::is_same<T,

    16

    3답변

    다음 코드를 고려하십시오 #include <iostream> #include <type_traits> int main(int argc, char* argv[]) { std::cout<<"std::is_same<int, int>::value = "<<std::is_same<int, int>::value<<std::endl; std::

    1

    1답변

    Boost Proto 식 중 언제 proto_tag 멤버가 필요합니까? typedef proto::tag_of<decltype(_1)>::type ta; typedef decltype(_1)::proto_tag tb; 을하지만 표현의 아이의 태그 유형에 대해 묻는다면, proto_tag 멤버가없는 것으로 나타납니다 : 나는 다음과 같은 방법 중 하

    8

    1답변

    C++ 11 유형 특성을 활용하기 위해 풀링 된 고정 블록 메모리 할당자를 업그레이드하는 실험을하고 있습니다. 현재는, 예를 들어, 많은 경우에 void* operator new (std::size_t size) { // if-cascade just for simplest possible example if (size <= 64) { return

    5

    2답변

    템플릿 클래스 내의 함수에서 기본 형식과 다른 형식을 구분하려고합니다. C++ 11에서 당신은 할 수 있습니다 : if(std::is_fundamental<T>::value) { // Treat it as a primitive } else { //Treat it otherwise } 내가 틀렸다이는 C++ (11) 에없는 경우

    22

    1답변

    해당 형식을 확인할 수 있습니까 T은 임의의 유형 및 크기의 std::array입니까? 내가 예를 들어, 특정 배열을 확인할 수 있습니다 : is_same<T, std::array<int,5>>::value 하지만 T이 std::array의 인스턴스가 있는지 확인하고 싶습니다. 같은 아래 (물론, 컴파일되지 않는) 뭔가 : is_same<T, std::

    6

    1답변

    유형 T의 t이 SFINAE를 사용하여 매개 변수의 경우 구분을하기 위해, 나는 if 문 QVariant::fromValue(t); 및/또는을 알고 싶어요 QVariant::value<T>(); 은 컴파일합니다. 메타 타입 시스템을 해킹하지 않는 한, 하나가 컴파일되면 다른 하나도 수행합니다. T이 Q_DECLARE_METATYPE(T)을 사용하여

    8

    1답변

    type_traits 클래스를 작성하여 두 가지 유형이 동일한 템플릿 클래스의 특수화인지 여부를 감지하는 방법을 알고 싶습니다. 큰 문제는 다음과 같이 혼합 유형/비 유형 템플릿 클래스에서 작동해야한다는 것입니다. template <typename T, std::size_t N> class MyClass {}; 그런 것을 디자인 할 수 있습니까?

    2

    1답변

    다음 클래스의 경우 INTEL 2013 (업데이트 3) 및 GCC 4.7.2에서 다른 type_traits 결과를 제공합니다. 어느 것이 옳은가? #include <iostream> #include <type_traits> using namespace std; class A { public: A() = default; private