c++智能提示的一个疑问?
最近用VS2010学习C++,由于是初学,发现C++里的智能提示有点看不懂。和C#区别甚大。如下2张图所示。
从上图看出,C#智能提示相当简单名了,很好理解:命名空间.方法名(参数说明)
但C++的那种表示结构:命名空间::<参数?>::命名空间 &方法名 这种方式尖括号,&符号等等完全无法理解。
所以在这请教各路大侠,我该如何去理解c++那种智能提示的结构?
[解决办法]
模板类而已。等你学到模板自然就懂了。
[解决办法]
因为cout只是后面那一场串的一个别名..
你只要看后面的参数部分就好了.
这里有用到模板和引用.
[解决办法]
std::basic_ostream<char, std::char_traits<char> >::_Myt &write(const char * _Str, std::streamsize _Count )
其实它就是:
ostream & write( const char * _Str, streamsize _Count );
c++与C#不同,cout不象Console那样是一个类,而是一个对象,它的类名是ostream。write方法有一个ostream&类型的返回值,是为了象下面那样调用:
cout.write(a).write(b).write(c);
namesapce std
{
template< typename CHAR_TYPE, typename TRAITS_TYPE>
class basic_ostream
{
typedef basic_ostream< CHAR_TYPE, TRAITS_TYP> _Myt;
...