可能問題描述的不清楚吧,如下代碼:
class GroupA
{
enum T {
Student1 = 0,
Student2,
Student3,
}
};
class GroupB
{
enum T {
Student4 = 0,
Student5,
Student6,
}
};
以上GroupA和GroupB內的Student編號都是從0開始的,怎么才能實作新類或者列舉,使Student1到Student6順序編號0,1,2,3,4,5呢?
class GroupAB : public GroupA, public GroupB
{
};
這樣直接繼承的編號不會變的,有沒有可以實作的方式呢,望指點迷津,謝謝。
uj5u.com熱心網友回復:
沒有。沒有答案的問題,就是問題本身錯了。
這個是你混淆了問題和解決方案。
uj5u.com熱心網友回復:
你上面的代碼有2點是不對的1. enum T 是定義的型別,注意這是型別,不是變數,類同int。類里面的成員只能是變數或函式。
2. 兩個列舉類都是從0開始,那么Student1/Student4 怎么區分
uj5u.com熱心網友回復:
無論什么方式,只要能把兩個列舉合并到一起,并重新編號就行。
就像兩個班級里的學生一樣,兩個班合成一個班,重新分配學號。
如果沒有理論支撐的話,一般情況下這種問題該怎么處理呢?
謝謝您的回復。
uj5u.com熱心網友回復:
編譯時,做不到,運行時,隨便搞。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/205154.html
標籤:C++ 語言
