我想知道在A和B之间的类或结构内调用静态函数(和变量)的更好方法是什么。
A: ClassName::functionName();
B: functionName();
这是我简单的示例代码:
在头文件中,
typedef struct _mystruct
{
static void myfunction();
} t_mystruct;
在CPP文件中,
void t_mystruct::myfunction()
{
//do something
}
现在,在同一个CPP文件中,在A和B之间调用此静态函数的更好的做法是什么?
A: t_mystruct::myfunction();
B: myfunction();
答案 0 :(得分:1)
仅在val df: DecimalFormat = DecimalFormat("#,##0.000")
df.decimalFormatSymbols = DecimalFormatSymbols(Locale.getDefault())
df.format(BigDecimal(123456,78)); //will output 123.456,78 - depending on Locale
的实现内部,直接调用myfunction();
是可行的。在这种情况下,您可以根据自己喜欢的编码样式进行操作:
t_mystruct
否则,您必须明确使用其完全限定名称:
// .h
struct t_mystruct // You can declare it directly that way
{
static void myfunction();
void myOtherFunction();
};
// .cpp
void t_mystruct::myOtherFunction()
{
myfunction(); // That's fine!
t_mystruct::myfunction(); // That's fine too!
}
这对于您的整个代码库都是如此,不仅适用于考虑的.cpp文件。