利用 C++ STL vector 與模板特化,建立型別安全的 CGI 解析類別:
Pair:封裝單一名稱/值對,處理 URL 解碼(+→空格、%XX→字元),提供副本建構子、賦值運算子、解構子管理動態記憶體。CGI_vector:繼承 vector<Pair>,建構子自動解析完整查詢字串,nextPair() 切分 & 與 = 產生 Pair 並 push_back。啟動時開啟 list2.txt(附加+讀取模式),無限迴圈:
gets(buf) 讀標準輸入一行(Email)。alreadyInList() 檢查檔案是否已存在(以 <email> 格式避免部分匹配)。fflush(stdout) 確保即時回應。Pair/CGI_vector,展示 C++ 模板與 RAII 在 CGI 開發的威力。