Choices 생성자
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Choices 클래스의 새 인스턴스를 초기화합니다.
오버로드
Choices() |
대체의 빈 집합을 포함하는 Choices 클래스의 새 인스턴스를 초기화합니다. |
Choices(GrammarBuilder[]) |
하나 이상의 Choices 개체를 포함하는 배열에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다. |
Choices(String[]) |
예제
다음 예제에서는 개체를 사용하여 Choices 두 가지 대체 목록을 만듭니다.
첫 번째 Choices 개체는 개체 배열 String 에서 생성됩니다. 다른 Choices 개체는 캐스트에 의해 암시적으로 변환된 개체 배열 GrammarBuilder 에서 생성됩니다.
이 예제에서는 개체를 사용하여 GrammarBuilder 개체와 두 개의 추가 문자열을 사용하여 Choices 구를 어셈블합니다. 이 문자열은 "전화 번호로 [phoneType] 전화에서 [contactlList] 통화" 형식으로 음성 입력을 인식하는 데 사용할 수 있습니다(예: "휴대폰에서 Jane에게 전화").
public GrammarBuilder ChoicesConstructor2 ()
{
GrammarBuilder gb = new GrammarBuilder ();
Choices phoneType = new Choices (new string[] {"cell", "home", "work"});
Choices contactList = new Choices (new GrammarBuilder[] {(GrammarBuilder) "Mark", (GrammarBuilder) "Jane", (GrammarBuilder) "Frank"});
gb.Append ("Call");
gb.Append (contactList);
gb.Append ("on");
gb.Append (phoneType);
gb.Append ("phone");
return gb;
}
설명
매개 변수가 Choices 없는 생성자(빈 개체를 반환함), 개체 그룹 String 또는 개체 집합 GrammarBuilder 을 사용하여 개체를 생성할 수 있습니다.
개체는 GrammarBuilder 암시적 변환 SemanticResultValue 을 지원하므로 SemanticResultKey캐스트를 Choices 사용하여 이러한 개체의 배열에서 생성할 수 있습니다.
Choices()
대체의 빈 집합을 포함하는 Choices 클래스의 새 인스턴스를 초기화합니다.
public:
Choices();
public Choices ();
Public Sub New ()
예제
다음 예제에서는 "휴대폰에서 Anne 호출" 및 "회사 전화에서 James에게 전화"와 같은 음성 입력을 인식하는 데 사용할 수 있는 구를 만드는 데 사용 및 GrammarBuilder 개체를 사용합니다Choices. 이 예제에서는 암시적 캐스트를 Choices String GrammarBuilder사용합니다.
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
설명
이 생성자는 유효한 빈 대체 집합을 반환합니다. 메서드를 Add 사용하여 대안을 추가할 수 있습니다.
추가 정보
적용 대상
Choices(GrammarBuilder[])
하나 이상의 Choices 개체를 포함하는 배열에서 GrammarBuilder 클래스의 새 인스턴스를 초기화합니다.
public:
Choices(... cli::array <System::Speech::Recognition::GrammarBuilder ^> ^ alternateChoices);
public Choices (params System.Speech.Recognition.GrammarBuilder[] alternateChoices);
new System.Speech.Recognition.Choices : System.Speech.Recognition.GrammarBuilder[] -> System.Speech.Recognition.Choices
Public Sub New (ParamArray alternateChoices As GrammarBuilder())
매개 변수
- alternateChoices
- GrammarBuilder[]
대체 집합을 포함하는 배열
예제
다음 예제에서는 "그녀의 셀에 앤에게 전화" 및 "회사 전화로 James에게 전화"와 같은 구문을 만드는 데 사용되는 Choices
개체입니다GrammarBuilder.Grammar 이 예제에서는 암시적 캐스트를 Choices
String GrammarBuilder사용합니다.
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
설명
각 GrammarBuilder 항목은 alternateChoices
하나의 대안을 정의합니다. 빈 배열인 경우 alternateChoices
생성자는 빈 대체 집합을 반환합니다. 메서드를 Add 사용하여 대안을 추가할 수 있습니다.
생성자는 배열 요소가 있는 ArgumentNullException 시기 alternateChoices
null
또는 시기를 throw합니다 null
.
클래스는 GrammarBuilder 캐스트를 사용하여 인스턴스로의 ChoicesSemanticResultValue암시적 변환 및 SemanticResultKey 개체를 지원하므로 GrammarBuilder 이 생성자를 사용하여 이러한 개체의 조합 목록에서 개체를 만들 Choices 수도 있습니다.
추가 정보
적용 대상
Choices(String[])
public:
Choices(... cli::array <System::String ^> ^ phrases);
public Choices (params string[] phrases);
new System.Speech.Recognition.Choices : string[] -> System.Speech.Recognition.Choices
Public Sub New (ParamArray phrases As String())
매개 변수
- phrases
- String[]
대체 집합을 포함하는 배열
예제
다음 예제에서는 "그녀의 셀에 앤에게 전화", "회사 전화로 James에게 전화"와 같은 구문을 만드는 데 사용되는 Choices 개체입니다GrammarBuilder.Grammar 이 예제에서는 암시적 캐스트를 Choices
String GrammarBuilder사용합니다.
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
설명
각 String 항목은 phrases
하나의 대안을 정의합니다. 음성 인식 엔진은 문자열 배열의 항목 중 하나를 사용하여 음성 입력과 일치할 수 있습니다. 빈 배열인 경우 phrases
생성자는 빈 대체 집합을 반환합니다. 메서드를 Add 사용하여 대안을 추가할 수 있습니다.
생성자는 배열 요소가 있는 ArgumentNullException 경우 phrases
null
또는 임의의 경우를 throw합니다 null
. 생성자는 배열의 ArgumentException 요소가 빈 문자열("")인 경우 throw합니다.