데이터의 시계열을 저장할 클래스를 만들려고합니다. 그룹별로 구성되었지만 컴파일 오류가 발생하여 기본 (간단 함 인스턴스화) 여전히 컴파일 오류를 극복 할 수 없습니다. 나는이 문제를 전에 보았던 사람이 있었으면 좋겠다. 는 Clas는 다음과 같이 정의한다 : - :Generics가있는 클래스 : 'constructor deprecated'오류가 발생했습니다.
type tempRec = {
someKey: string ;
someVal1: int ;
someVal2: int ;
}
let keyFunc r:tempRec = r.someKey
// error occurs on the following line
let q = new TimeSeriesQueue<tempRec, string> keyFunc
This construct is deprecated: The use of the type syntax 'int C' and 'C ' is not permitted here. Consider adjusting this type to be written in the form 'C'
type TimeSeriesQueue<'V, 'K when 'K: comparison> = class
val private m_daysInCache: int
val private m_cache: Map<'K, 'V list ref > ref;
val private m_getKey: ('V -> 'K) ;
private new(getKey) = {
m_cache = ref Map.empty
m_daysInCache = 7 ;
m_getKey = getKey ;
}
end
그래서 (이되지 않을 수도 있습니다,하지만 오류 또는 경고가 나던) 나에게 확인을 보이는 인스턴스 오류를 가져옵니다 NOTE 이것은 단순한 어리 석음 일 수 있습니다. 저는 방학에서 돌아오고 있습니다. 그리고 내 두뇌는 여전히 시간대의 지체에 있습니다 ...
내가 keyFunc로 오타를 발견 않았다 - 나는 내 코드를 단순화되면서 발생해야합니다 게시하다. 인스턴스화와 관련하여 괄호를 추가했는데 방금 두 번째 컴파일 오류가 발생했습니다. "메서드 또는 개체 생성자 'TimeSeriesQueue2'을 (를) 찾을 수 없습니다. 클래스 구문을 암시 적으로 변경하는 것에 반대하지 않았습니다. 명시 적으로 그것을 해결 ... – akaphenom
nevermind ... 휴가 rediculousness, costructor 개인으로 표시했다 ... – akaphenom