Closed. This question needs details or clarity。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
                        
                        2年前关闭。
                                                                                            
                
        
我有一个日志记录类(单例),每次调用都像这样:

SomeNamespace::Logger::instance().log(SomeNamespace::Logger::Priority::Error, "log info %d %d %d", 1, 2, 3);


是否可以在C ++ 14中缩短此调用?

如果有更优雅的方法,我不想使用#define,但我自己无法解决。

编辑:我真正想要的是为不同的日志记录级别创建一组函数别名,以使调用看起来像:

LogInfo("log info %d %d %d", 1, 2, 3);
LogError("log info %d %d %d", 1, 2, 3);

最佳答案

像这样导入名称空间

using SomeNamespace


或这个

using SomeNamespace::Logger


编辑:

最简单的方法是:

LogInfo("log info %d %d %d", 1, 2, 3);
LogError("log info %d %d %d", 1, 2, 3);


是为Logger类创建一个外观,该外观为您完成所有肮脏的工作,并使用using指令将其导入。

09-30 14:48
查看更多