本帖最后由 IHatMyself 于 2012-02-13 11:39:49 编辑

解决方案 »

  1.   

    他就是个string,不过会确保把所有的string类型替换为UTF8String
      

  2.   

    详细些说意思是用新的名字来替代string而且它确保在运行时,这个类型的变量被识别为它的新类型名称,而不是原先已存在的类型名称。
      

  3.   

    貌似是不是 传参时 用了const 然后在后面 强制类型转换时 就造成错误了??即 强转 const string 参数造成的错误?
      

  4.   

    好神奇,我下的SQLLite的pas文件里面没有UTF8String 
      

  5.   

    另外我发现SQLLite不支持含中文的路径
      

  6.   

    楼上那么多人也没扯到重点。
     先搞清楚 UTF8String = type string; 和 UTF8String = string;的区别吧。
      

  7.   


    Type identity is almost straightforward. When one type identifier is declared using another type identifier, without qualification, they denote the same type. Thus, given the declarationstype
      T1 = Integer;
      T2 = T1;
      T3 = Integer;
      T4 = T2;T1, T2, T3, T4, and Integer all denote the same type. To create distinct types, repeat the word type in the declaration. For example,type TMyInteger = type Integer;creates a new type called TMyInteger which is not identical to Integer.
      

  8.   

    Type
     TMyInteger = Integer;
     這種定義,TMyInteger與Integer是同一個類型,都可以當Integer用。type 
      TMyInteger = type Integer;這個在Integer前加了Type的,TMyInteger與Integer就是不同的類型了。
      

  9.   

    http://topic.csdn.net/u/20111220/09/5786246f-4054-4e14-aff4-6f8906ff2167.html
    有人讨论过了。