string 结束时亟需输入两次换行符吗

string 结束时需要输入两次换行符吗?
使用char数组时,只要一次换行符就结束输入,如下:
#include <iostream>
#include <string>
using namespace std;

int main()
{
   char name[60];
   cin.getline(name, 60);
   cout<<name<<endl;
   
return 0;
}

但是下面使用string 时需要输入两次换行符,才能结束输入,是这样吗?怎样做到一次换行就结束输入?
#include <iostream>
#include <string>
using namespace std;

int main()
{
   string name2;
   getline(cin, name2);
   cout<<name2<<endl;

return 0;
}

------解决方案--------------------
这个和string、char没关系,这个只和getline方法有关系。