[vtk-developers] vtkStdString vs std::string

David Thompson david.thompson at kitware.com
Wed Feb 20 22:42:07 EST 2013


Hi JC,

At least one reason vtkStdString exists is because old versions of SunCC could not compile std::map<std::string,std::string> as the template expansions resulted in class names exceeding a fixed string length in the compiler (strings were templated on character type in Sun's STL). That is no longer a concern and when we dropped support for old compilers a while back, std::string became allowed.

	David

On Feb 20, 2013, at 5:56 PM, Jean-Christophe Fillion-Robin <jchris.fillionr at kitware.com> wrote:

> Hi Folks, 
> 
> What is the advantages of one vs the other? Looking at the current code base, seems both are widely used.
> 
> 
> $ rm -rf Common/Core/vtkStdString.*
> $ ack -c -l -h "std\:\:string" | cut -d":" -f2 | awk '{s+=$1} END {print s}'
> 1583
> $ ack -c -l -h "vtkStdString" | cut -d":" -f2 | awk '{s+=$1} END {print s}'
> 2104
> 
> 
> Are the following reason still valid:
>     - allow forward declaration hence reducing the number of header inclusion, and also speed compilation.
>     - shorter symbol name. See [1]
> 
> 
> As a best practice, should we recommend one vs the other ?
> 
> Thanks
> Jc
> 
> [1] http://www.vtk.org/pipermail/vtkusers/2010-January/105450.html
> 
> -- 
> +1 919 869 8849
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
> 
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtk-developers
> 

David Thompson
R&D Engineer – Kitware, Inc.
david.thompson at kitware.com
(919)869-8868
Suite G-4
101 E. Weaver St.
Carrboro, NC 27510




More information about the vtk-developers mailing list