如何解决让 ReSharper 使用 m_ 约定
我在 Visual Studio 中使用 ReSharper C++,但它使用了一些我不喜欢的奇怪命名约定。我想使用 this convention,它在类成员变量和蛇大小写上使用 m_
前缀。他们声明可以使用 .clang-format
,但我使用的不是 LLVM,而是 VS 的编译器。
有人制作了应用这些约定的文件吗?可以肯定的是,大多数人都在使用它们。
#ifndef RESOURCE_CLONER_HPP
#define RESOURCE_CLONER_HPP
#include <Windows.h>
#include <algorithm>
#include <stdexcept>
#include <string_view>
namespace resource_cloner
{
class resource_cloner
{
public:
resource_cloner() = default;
resource_cloner(const resource_cloner&) = delete;
resource_cloner(resource_cloner&& obj) noexcept
{
*this = std::move(obj);
}
~resource_cloner()
{
unload();
}
resource_cloner& operator=(const resource_cloner&) = delete;
resource_cloner& operator=(resource_cloner&& rhs) noexcept
{
m_source_path = rhs.m_source_path;
return *this;
}
void load()
{
m_module = LoadLibraryExW(m_source_path.data(),nullptr,LOAD_LIBRARY_AS_DATAFILE);
if (!m_module)
{
throw std::runtime_error("Could not open source file.");
}
}
void unload() const
{
if (m_module)
{
FreeLibrary(m_module);
}
}
private:
std::wstring_view m_source_path;
HMODULE m_module{ nullptr };
};
}
#endif
解决方法
您可以在“ReSharper | Options | Code Editing | C++ | Naming Style”选项页面上配置命名约定,或选择预定义方案之一。也就是说,同时使用“m_”作为类成员前缀和“t_”作为参数名称前缀是不常见的,并且没有一个主要的 C++ 风格指南使用这个约定。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。