24小时热门版块排行榜    

查看: 321  |  回复: 2

babyling

银虫 (小有名气)

[交流] 【求助】C++定义问题 已有1人参与

我看到一个定义一个矩阵的代码如下:

TBMat > Surf_left;

意思是要使Surf_left 表示一个二维矩阵
TBMat要怎么定义,才能使这个代码能够正确
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fwz

木虫 (正式写手)


ajian04(金币+1):谢谢参与交流~ 2010-10-24 07:38:06
babyling(金币+10):虽然依旧不明白,不过还是谢谢你 2010-10-25 11:21:12
TBMat是一个类,这个类使用的是模板是complex,而complex又是一个(标准库里面的complex)类,使用的模板是double。
要使用TBMat类应该包含类吧
2楼2010-10-23 23:50:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★ ★
余泽成(金币+2):嘿嘿,谢谢参与应助! 2010-10-26 00:22:47
babyling(金币+15):看到这么长的回复,很激动,非常感谢 2010-10-26 21:20:57
很久没写了,不知道是不是能写对
CODE:
#include
using namespace std;

template class TBMat
{
    T c;

public:
    TBMat(T cmplx) {c = cmplx;}
};

int main(int argc, char** argv)
{
    complex c(1.0, 1.0);
    TBMat > Surf_left(c);
}

CODE:
#include
using namespace std;

template class TBMat
{
};

template class TBMat >
{
    complex c;

public:
    TBMat(complex cmplx) {c = cmplx;}
};

int main(int argc, char** argv)
{
    complex c(1.0, 1.0);
    TBMat > Surf_left(c);
}

第一个是完全泛化的版本,第二个是一个偏特化的版本(在VC6中可能有问题)

好吧,我承认我查书了……
3楼2010-10-25 21:54:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 babyling 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见