조건부 포인터 역 참조 함수를 구현하려고합니다. 필요한 전문의 수를 제한하기 위해 return is_pointer(arg) ? *arg : arg
, 나는 arg 포인터하지 않은 경우에를 rvalue 참조를 사용하려고 해요 : 다음과 같이 기본 개념이다. 여기에 내 현재 구현합니다 (std::cout 전적으로 목적을 디버깅이 있습니다) : templat
나는 다음과 같이 템플릿 클래스 내부 decltype를 사용하는 것을 시도하고있다 : 잘 작동 #include <functional>
template <typename T>
class A
{
typedef decltype(std::bind(&A::f, std::declval<A>())) some_type;
void f();
};
내가 클래스 템플릿을 가지고 ABC라는 이름의 클래스가 객체 다른 클래스 템플릿 매개 변수가있는 ABC 개체를 저장하려고합니다. 컴파일 할 때 포인터에 대해서도 템플릿을 지정해야합니까? 컨테이너가 다른 유형의 객체를 저장한다고 가정하면 어떻게 될까요? 그게 가능하지 않니?
C++ 클래스 템플릿의 문제점을 조사하고 있습니다. 하나의 클래스 템플릿은 전문화되어 있지만 컴파일러가 항상 전문화를 사용하도록 선택하지는 않습니다. 내가 생성자 인수 (그리고 문제가 단순한 인수가 발생하지 않습니다) 꽤 복잡하기 때문에 문제를 보여주는 샘플을 만들 수 관리하지 않은 temlate <class T>
class MyClass { /*some
내가 템플릿 메타 프로그래밍에 아주 새로운 해요 및이 방법에 내 생각의 오류를 찾을 수 없습니다 : template <typename T>
typename T::ReturnType Query(const std::string& Str);
template <>
ResultTypeRowCount Query(const std::string& Str)
다음 프로그램을 고려 :이 ADL은 네임 스페이스 >> 연산자를 발견로에 관계없이 표준에서 발견 된 운영자가이었다 여부에 더 이상 글로벌 범위를 고려하지 않습니다 그것을 수 std 즉시 때문에 컴파일에 실패 #include <iostream>
#include <iterator>
#include <vector>
#include <utility>
usi
나는 Vandevoorde와 Josuttis의 "C++ Templates The Complete Guide"(꽤 좋은 것처럼 보입니다)를 읽었습니다. 이 클레임 (3.3 절)이 잘못되었습니다. and is not in the published errata : 클래스 템플릿을 전문화하는 경우 모든 멤버 함수도 특수화해야합니다. 단일 멤버 함수를 특수화 할 수
한다고 가정 나는 형식 매개 변수 만 반환 형식으로 사용되는 함수 템플릿이 있습니다 template <typename T>
T foo()
{
return whatever;
}
그런 다음 함수 템플릿을 전문으로하는 올바른 구문은 무엇입니까? 다음 두 가지가 작동하는 것 같습니다. template <>
std::string foo()
{
TYPO3 템플릿 구문을 사용하여 IF/ELSE를 구현할 수 있습니까? 여기 내 템플릿입니다 : <div class="simi-prof-pic">
<div class="simi-botcurv">###ITEM_IMAGE###</div>
</div>
나는 (PHP 구문을 사용하여 작성) 이런 식으로 일을하고 싶은 : <?php if(###ITEM