|
![]() |
#1 |
Участник
|
Ага. Но если Map еще не инициализирован, то мы никак не можем заранее сказать, какой именно таблицей он будет инициализирован. Клиентом или поставщиком. Нет данных
А вот если он инициализирован, то,... а нам действительно надо знать, что это именно map?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
![]() |
#2 |
Участник
|
нет конечно, реальную задачу я переформулирую, чтобы обойтись и без этого )))
а вот для себя хотелось бы понять - есть ли способ "действительно знать". я чуток подправил псевдокод, чтобы было понятно где и какой именно результат хотелось бы получить X++: str TheUltimateQuestionOfLifeTheUniverseAndEverything(anytype mapOrTable) { if( /* Deep Thought question: mapOrTable is CustVendTable */ ) return 'nirvana'; return '42'; } static void main(Arga args) { CustTrans ctr; VendTrans vtr; CustVendTrans mapTr; CustVendTrans mapTrInit = vtr; CustTable ct; VendTable vt; CustVendTable mapT; CustVendTable mapTinit = ct; debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (ctr)); debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (vtr)); debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (maptr)); debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (maptrInit)); debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (ct)); debug::assert('42' == TheUltimateQuestionOfLifeTheUniverseAndEverything (vt)); debug::assert('nirvana' == TheUltimateQuestionOfLifeTheUniverseAndEverything (mapTinit)); debug::assert('nirvana' == TheUltimateQuestionOfLifeTheUniverseAndEverything (mapT)); } Последний раз редактировалось mazzy; 18.10.2016 в 17:15. |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|