問題描述
你如何在 C++ 中創(chuàng)建靜態(tài)類?我應該能夠做這樣的事情:
How do you create a static class in C++? I should be able to do something like:
cout << "bit 5 is " << BitParser::getBitAt(buffer, 5) << endl;
假設我創(chuàng)建了 BitParser
類.BitParser
類定義是什么樣的?
Assuming I created the BitParser
class. What would the BitParser
class definition look like?
推薦答案
如果您正在尋找一種應用靜態(tài)"的方法類的關鍵字,例如您可以在 C# 中,那么您將無法不使用托管 C++.
If you're looking for a way of applying the "static" keyword to a class, like you can in C# for example, then you won't be able to without using Managed C++.
但是從示例的外觀來看,您只需要在 BitParser 對象上創(chuàng)建一個公共靜態(tài)方法.像這樣:
But the looks of your sample, you just need to create a public static method on your BitParser object. Like so:
BitParser.h
class BitParser
{
public:
static bool getBitAt(int buffer, int bitIndex);
// ...lots of great stuff
private:
// Disallow creating an instance of this object
BitParser() {}
};
BitParser.cpp
bool BitParser::getBitAt(int buffer, int bitIndex)
{
bool isBitSet = false;
// .. determine if bit is set
return isBitSet;
}
您可以使用此代碼以與示例代碼相同的方式調用該方法.
You can use this code to call the method in the same way as your example code.
這篇關于你如何在 C++ 中創(chuàng)建一個靜態(tài)類?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!