2013-04-29 2 views

답변

2

어떤 종류의 행동을 포함하는 메커니즘이다.

matrix_container입니다 - 단어가 말한대로 - 컨테이너. matrix_expression

는 (두 행렬의 첨가 등)을 표현한다. RCTI 관용구를 기반으로하며 라이브러리 디자인에 도움이됩니다. 예를 들어, 클래스 객체 (멤버 함수)에 과제를 쓰고 싶다고 가정 해 보겠습니다. 당신은 단지 매트릭스 유형이 ublas,보다 간단한 상황을 가정하고 당신이 쓰고 싶은이와

template <typename _E> 
void assign(_E const & e); 

문제는 다음 소켓 또는 표준을 할당 할 수 있다는 :: 문자열을 매트릭스이다. 일반적으로 하나의 그래서이 ;-)

을 피하려고, 더 좋은 방법은 작성하는 것입니다 :

template <typename _E> 
void assign(matrix_expression<_E> const & e) ; 

지금 당신은 단지 매트릭스 식을 할당 할 수 있습니다. 저는 이것이 단지 로직 일 뿐이며 ublas 특정 디자인이 아니라는 점을 강조합니다. 그러나 로직은 항상 이것입니다.

말은 이제 두 개의 행렬로 = 자신의 연산자 *를 쓰고 싶다, 또는 매트릭스 식 또는 두 표현식와 어쩌면 * = 행렬 당신은 LAPACK를 사용하고 싶습니다. matrix_expressionmatrix_container의 차이는이 작업의 전문 버전을 쓰기 도움이 될 것이다.

PS : 나는 강조,이 실제로 발생하지 것을 기본 논리/동기 부여이다. 만약 당신이 더 깊은 창을 깊이 파고 들면, 같은 논리가 어떻게 사용되는지 더 많이 알 수 있습니다.