C++模板类一个函数实现打印各种不同的元素类型
  • 板块灌水区
  • 楼主cjz13683356870
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/10/21 17:44
  • 上次更新2023/11/4 03:02:52
查看原帖
C++模板类一个函数实现打印各种不同的元素类型
382198
cjz13683356870楼主2021/10/21 17:44
template<typename T>
char* MAT<T>::print(char* s) const noexcept {
	for (int i = 0; i < this->r; i++) {
		for (int j = 0; j < this->c; j++) {
			s += sprintf(s, "%6ld", this->e[i * this->c + j]);
			if (j + 1 != this->c) s += sprintf(s, "%c", ' ');
			else s += sprintf(s, "%c", '\n');
		}
	}
	s -= 1;
	s += sprintf(s, "%c", '\0');
	return s;
}

这是一个矩阵模板类用于打印矩阵元素的函数,关于中间sprintf的部分我应该怎么修改才能保证对于随着T而改变的元素类型都能完美打印出来呢?比如T分别为int和double时,当前这个print函数就不能打印double元素

2021/10/21 17:44
加载中...