0
我在想,如果我們能有一個類的成員由2名來命名,比如我班有變量_width
和_height
,我想我的代碼通過或者使用_width
或_rows
使用_width
。我雖然可以使用宏,但還有另一種方法可以在C++中使用宏。這也是一個很好的做法嗎? 感謝類memeber名別名++
我在想,如果我們能有一個類的成員由2名來命名,比如我班有變量_width
和_height
,我想我的代碼通過或者使用_width
或_rows
使用_width
。我雖然可以使用宏,但還有另一種方法可以在C++中使用宏。這也是一個很好的做法嗎? 感謝類memeber名別名++
試試這個:
class StrangeOne {
int _width, _height;
int &_rows;
public:
StrangeOne(int width,int height):
_width(width),
_height(height),
_rows(_width)
{
};
};
匿名聯合?
class two_names
{
union
{
int width;
int columns;
};
};
在C++ 11中,您甚至可以將非POD放在那裏。只要確定你知道你在做什麼。
這是可能的,但這樣做的好處是什麼? – billz 2013-04-07 10:49:34
它當然可以用預處理器宏來完成,但是所有的.e.g實例都可以完成。 '_rows'將被'_width'替代,並且可能不適合所有地方。我也不會說這是很好的做法。 – 2013-04-07 10:50:20
您可以使用參考。但請記住,它需要內存(除非編譯器很聰明)。 – KAction 2013-04-07 10:50:25