class 字符串是否总是被初始化为空?

Does a class string always gets initialized to empty?

我在 class 中有这个字符串 st

class A
{
    private:
    static string s;
    string t;
    public:
    void printString()
    {
        cout<<s<<t<<endl;
    }
};

我尝试打印这些字符串,如果没有初始化它们每次都是空的。所以我的问题是 class 字符串在构造函数初始化之前是否始终为空。对于静态和非静态字符串也是如此吗?

在这两种情况下,都会调用默认的字符串构造函数。 std::string class 的默认构造函数将始终将其初始化为空字符串。