私はlibaryを使用していますが、いくつかのメソッド名はsuckだけです。 libのソースに触れずにこれらのメソッド名を安全に変更する方法はありますか?libaryのメソッド名を変更
0
A
答えて
-2
メソッド名はABIレベルの詳細なので、すべてのマシンに対して1つの答えはありません...異なるABIの異なる名前のマングリングスキームとparamエンコーディングスキームなどを使用します。少なくともOS、いくつかのメソッド(binutilsなど)の名前を変更するためのツールがあるかもしれませんが、新しい名前を使用するようにヘッダーを変更する必要があります。
+0
に対して招待されましたが、基本的にはあなたの努力の価値はありません –
1
ああホラー - - あなたがに頼る必要がある場合があります、そこにかかわらず、クラスメソッドのために、この
inline int NiceName(){return HorribleName();}
doesntの仕事のようにヘッダマクロ
1
本当にクラスのメソッド名を変更したい場合は、できます。単純に元のクラスをサブクラス化し、メソッドのパラメータをメソッドに完全に転送するきれいな名前の新しいメソッドを追加します。変更する名前は醜い名前です。
struct B
{
// for example
int UglyName(std::string str, int i)
{ std::cout << str << " " << i << std::endl; return i + 1; }
};
struct C : B
{
template<typename ...Args>
auto PrettyName(Args&& ...args)
{ return UglyName(std::forward<Args>(args)...); }
};
int main()
{
C c;
std::cout << "return value: " << c.PrettyName("Test Message: ", 23) << std::endl;
return 0;
}
関連する問題
- 1. Pythonメソッド名の変更
- 2. 変更Pythonのメソッドのパラメータ名、プログラム
- 3. クラス名を変更するjQuery attr()メソッド
- 4. Flatfiles(libary.01.pm、libary.02.pm ...)からGIT
- 5. アクセントlibaryのコンテキストコンテキスト
- 6. クラス名、メソッド名を変更してエクスポートする
- 7. sudoをpipに変更するにはlibaryをanacondaにインストールします
- 8. コントローラ名の変更/名前変更URL:Yii2
- 9. メインのPerson名を別のvoidメソッドから変更する
- 10. riak、cpp libaryとビルドエラー
- 11. Angular4のデフォルトのロードブーストラボlibary?
- 12. メソッド名に影響を与えるコードの変更。
- 13. クラス本体のメソッド名を変更してください
- 14. has_through rails associationのメソッド名を変更するには?
- 15. 予約語であるプロパティ/メソッド名の名前を変更するベストプラクティス?
- 16. Pythonの変数メソッド名
- 17. python変数のメソッド名
- 18. 列名を変更したLinqメソッドをviewModelに追加
- 19. javascriptの変数/メソッドの名前を変更するツールはありますか?
- 20. メソッド/クラス/変数名を変更するためのJava obfuscatorの提案
- 21. 名前を変更してアイテムの名前を変更する
- 22. Emberコンポーネントのメソッドを変更
- 23. TypeScriptで名前が変更されたメソッドを持つエクスポートクラス?
- 24. C++リファクタリング:メソッド名、入出力を変更する
- 25. Objective-C to Swift 3メソッド名変更の問題
- 26. swiftメソッドの名前がjavascriptで変更されました
- 27. 変数名を列名に変更
- 28. cygwinのユーザ名の変更/変更
- 29. コアデータ名の変更
- 30. オブジェクトプロパティ名の変更
いいえ、できません。 – DimChtz
パターンについて読む。プロキシのようなものは、お客様の要件 –