这是我对泛型编程的第一次尝试。我正在创建一个二叉树模板类,我正在向树中添加一个元素:
void BinaryTree<T>::add(T newElement) { ... }
这当然会涉及一个while
循环,它会将newElement
的位右移,直到它们全部关闭。但我如何一般地检查他们是否全部关闭?我知道,在ints
和chars
的情况下,我将分别针对0
和'\O'
进行检查。但是我的算法需要适用于任何数据结构等效的“零”,如果这是有道理的。什么是C ++纯粹主义者的做法?
答案 0 :(得分:0)
一种措辞奇怪的问题,但是(如果我理解正确的话)你不能把问题的值转换为布尔值吗?
if (!(bool)newElement) std::cout << "value equal to zero." << std::endl;