首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::messages::close

Defined in header <locale>

?

?

public: void close( catalog c ) const;

(1)

?

protected: virtual void do_close( catalog c ) const;

(2)

?

1%29公共成员函数,调用受保护的虚拟成员函数。do_close最派生的类。

2%29释放与由值指定的开放目录关联的实现定义资源。c类型catalog28%遗传自std::messages_base%29,从open()...

参数

c

-

a valid open catalog identifier, on which close() has not yet been called

返回值

%280%29

注记

在POSIX系统上,此函数调用通常转换为catclose().在GNU中libstdc++,它是用GNU实现的。gettext()它什么都不做。

下面的示例演示了消息的检索:在一个典型的GNU/Linux系统上,它从/usr/share/locale/de/LC_MESSAGES/sed.mo...

二次

代码语言:javascript
复制
#include <iostream>
#include <locale>
 
int main()
{
    std::locale loc("de_DE.utf8");
    std::cout.imbue(loc);
    auto& facet = std::use_facet<std::messages<char>>(loc);
    auto cat = facet.open("sed", loc);
    if(cat < 0 )
        std::cout << "Could not open german \"sed\" message catalog\n";
    else
        std::cout << "\"No match\" in German: "
                  << facet.get(cat, 0, 0, "No match") << '\n'
                  << "\"Memory exhausted\" in German: "
                  << facet.get(cat, 0, 0, "Memory exhausted") << '\n';
    facet.close(cat);
}

二次

产出:

二次

代码语言:javascript
复制
"No match" in German: Keine ?bereinstimmung
"Memory exhausted" in German: Speicher ersch?pft

二次

另见

二次

*。

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com